aboutsummaryrefslogtreecommitdiff
path: root/layouts/community/ergodox/333fred
diff options
context:
space:
mode:
Diffstat (limited to 'layouts/community/ergodox/333fred')
-rw-r--r--layouts/community/ergodox/333fred/README.md23
-rw-r--r--layouts/community/ergodox/333fred/keymap.c52
-rw-r--r--layouts/community/ergodox/333fred/rules.mk1
3 files changed, 35 insertions, 41 deletions
diff --git a/layouts/community/ergodox/333fred/README.md b/layouts/community/ergodox/333fred/README.md
index f7b4ca42f..8286de173 100644
--- a/layouts/community/ergodox/333fred/README.md
+++ b/layouts/community/ergodox/333fred/README.md
@@ -5,24 +5,23 @@
5,--------------------------------------------------. ,--------------------------------------------------. 5,--------------------------------------------------. ,--------------------------------------------------.
6| ` | 1 | 2 | 3 | 4 | 5 | = | | L1 | 6 | 7 | 8 | 9 | 0 | - | 6| ` | 1 | 2 | 3 | 4 | 5 | = | | L1 | 6 | 7 | 8 | 9 | 0 | - |
7|--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| 7|--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
8| TAB | Q | W | E | R | T | L2 | | L2 | Y | U | I | O | P | \ | 8| TAB | Q | W | E | R | T | L1 | | L2 | Y | U | I | O | P | \ |
9|--------+------+------+------+------+------| | | |------+------+------+------+------+--------| 9|--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
10| Esc | A | S | D |LT 3,F| G |------| |------| H | J | K | L |; / : | ' | 10| Esc | A | S | D | F | G |------| |------| H | J | K | L | ; | ' |
11|--------+------+------+------+------+------| L1 | |TT(3) |------+------+------+------+------+--------| 11|--------+------+------+------+------+------| L2 | |TT(3) |------+------+------+------+------+--------|
12| LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | 12| LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift |
13`--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' 13`--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
14 |LCTRL | F4 | F5 | LGUI | LALT | | Left | Down | Up | Right| RGUI | 14 |LCTRL | F4 | F5 | LGUI | LALT | | Left | Down | Up | Right| RGUI |
15 `----------------------------------' `----------------------------------' 15 `----------------------------------' `----------------------------------'
16 ,-------------. ,-------------. 16 ,-------------. ,-------------.
17 | Copy | Paste| | Alt |Ctrl/Esc| 17 | Copy | Paste| | Copy | Paste |
18 ,------|------|------| |------+--------+------. 18 ,------|------|------| |------+--------+------.
19 | | | PgUp | | PgDn | | | 19 | | | PgUp | | PgDn | | |
20 | Bcksp|OSL(2)|------| |------| Ent |Space | 20 | Bcksp|OSL(2)|------| |------| Ent |Space |
21 | | | Del | |OSL(2)| | | 21 | | VIM | Del | |OSL(2)| | |
22 `--------------------' `----------------------' 22 `--------------------' `----------------------'
23``` 23```
24* Double-click `;` to get a `:` 24* For a single tap or single hold, OSL behaves like OSL(SYMB). For a tap + hold, it behaves like MO(VIM).
25* Press-and-hold `f` to go to the movement layer
26 25
27### Keymap 1: Code Layer 26### Keymap 1: Code Layer
28``` 27```
@@ -38,7 +37,7 @@
38 | | | | | | | F12 |GoToIm| FAR | | | 37 | | | | | | | F12 |GoToIm| FAR | | |
39 `----------------------------------' `----------------------------------' 38 `----------------------------------' `----------------------------------'
40 ,-------------. ,---------------. 39 ,-------------. ,---------------.
41 |Format|Build | | Test | DTest | 40 |Format|Build | | Copy | Paste |
42 ,------|------|------| |------+--------+------. 41 ,------|------|------| |------+--------+------.
43 | | |Refact| |Sort U| | | 42 | | |Refact| |Sort U| | |
44 | | |------| |------| | | 43 | | |------| |------| | |
@@ -46,13 +45,11 @@
46 `--------------------' `----------------------' 45 `--------------------' `----------------------'
47``` 46```
48* Build - Visualt Studio Build Solution. Sends `CTRL + SHFT + B` 47* Build - Visualt Studio Build Solution. Sends `CTRL + SHFT + B`
49* DTest - Visual Studio Debug Test. Sends `CTRL + R, CTRL + T`
50* FAR - Visual Studio Find All References. Sends `CTRL + K, R` 48* FAR - Visual Studio Find All References. Sends `CTRL + K, R`
51* Format - Visual Studio Format. Sends `CTRL + K, CTRL + D` 49* Format - Visual Studio Format. Sends `CTRL + K, CTRL + D`
52* GoToIm - Visual Studio Go To Implementation. Sends `CTRL + F12` 50* GoToIm - Visual Studio Go To Implementation. Sends `CTRL + F12`
53* Refact - Visual Studio Refactor. Sends `CTRL + R, R` 51* Refact - Visual Studio Refactor. Sends `CTRL + R, R`
54* Sort U - Visual Studio Sort Usings. Sends `CTRL + R, CTRL + G` 52* Sort U - Visual Studio Sort Usings. Sends `CTRL + R, CTRL + G`
55* Test - Visual Studio Run Test. Sends `CTRL + R, T`
56 53
57 54
58### Keymap 2: Symbol Layer 55### Keymap 2: Symbol Layer
@@ -105,9 +102,9 @@
105,--------------------------------------------------. ,--------------------------------------------------. 102,--------------------------------------------------. ,--------------------------------------------------.
106| | | | | | | | | | | | | | | | 103| | | | | | | | | | | | | | | |
107|--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| 104|--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
108| |KOpen |KType | | | | | | | Copy | | | | Paste| | 105| |KOpen |KType | LSFT | | | | | | Copy | | | | Paste| |
109|--------+------+------+------+------+------| | | |------+------+------+------+------+--------| 106|--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
110| |DLeft |DRight| LCTL | | |------| |------| Left | Down | Up | Right| | | 107| |DLeft |DRight| LCTL | LGUI | |------| |------| Left | Down | Up | Right| | |
111|--------+------+------+------+------+------| | | |------+------+------+------+------+--------| 108|--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
112| |SFT_TB| Tab | | | | | | | | | | | | | 109| |SFT_TB| Tab | | | | | | | | | | | | |
113`--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' 110`--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
@@ -117,7 +114,7 @@
117 | | | | Home | End | 114 | | | | Home | End |
118 ,------|------|------| |------+------+------. 115 ,------|------|------| |------+------+------.
119 | | | | | | | | 116 | | | | | | | |
120 | | LSFT |------| |------| | | 117 | | |------| |------| | |
121 | | | | | | | | 118 | | | | | | | |
122 `--------------------' `--------------------' 119 `--------------------' `--------------------'
123``` 120```
diff --git a/layouts/community/ergodox/333fred/keymap.c b/layouts/community/ergodox/333fred/keymap.c
index 3fac44e39..4e2cffa54 100644
--- a/layouts/community/ergodox/333fred/keymap.c
+++ b/layouts/community/ergodox/333fred/keymap.c
@@ -2,12 +2,7 @@
2#include "debug.h" 2#include "debug.h"
3#include "action_layer.h" 3#include "action_layer.h"
4#include "version.h" 4#include "version.h"
5 5#include "333fred.h"
6#define BASE 0 // default layer
7#define CODE 1 // code layer
8#define SYMB 2 // symbols
9#define MDIA 3 // media keys
10#define MOVE 4 // movement layer
11 6
12enum custom_keycodes { 7enum custom_keycodes {
13 PLACEHOLDER = SAFE_RANGE, // can always be here 8 PLACEHOLDER = SAFE_RANGE, // can always be here
@@ -48,20 +43,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
48 * ,--------------------------------------------------. ,--------------------------------------------------. 43 * ,--------------------------------------------------. ,--------------------------------------------------.
49 * | ` | 1 | 2 | 3 | 4 | 5 | = | | L1 | 6 | 7 | 8 | 9 | 0 | - | 44 * | ` | 1 | 2 | 3 | 4 | 5 | = | | L1 | 6 | 7 | 8 | 9 | 0 | - |
50 * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| 45 * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
51 * | TAB | Q | W | E | R | T | L2 | | L2 | Y | U | I | O | P | \ | 46 * | TAB | Q | W | E | R | T | L1 | | L2 | Y | U | I | O | P | \ |
52 * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| 47 * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
53 * | Esc | A | S | D |LT 3,F| G |------| |------| H | J | K | L | ; | ' | 48 * | Esc | A | S | D |LT 3,F| G |------| |------| H | J | K | L | ; | ' |
54 * |--------+------+------+------+------+------| L1 | |MO(3) |------+------+------+------+------+--------| 49 * |--------+------+------+------+------+------| L2 | |MO(3) |------+------+------+------+------+--------|
55 * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | 50 * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift |
56 * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' 51 * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
57 * |LCTRL | F4 | F5 | LGUI | LALT | | Left | Down | Up | Right| RGUI | 52 * |LCTRL | F4 | F5 | LGUI | LALT | | Left | Down | Up | Right| RGUI |
58 * `----------------------------------' `----------------------------------' 53 * `----------------------------------' `----------------------------------'
59 * ,-------------. ,-------------. 54 * ,-------------. ,-------------.
60 * | Copy | Paste| | Alt | Lock | 55 * | Copy | Paste| | Copy | Paste |
61 * ,------|------|------| |------+--------+------. 56 * ,------|------|------| |------+--------+------.
62 * | | | PgUp | | PgDn | | | 57 * | | | PgUp | | PgDn | | |
63 * | Bcksp|OSL(2)|------| |------| Ent |Space | 58 * | Bcksp|OSL(2)|------| |------| Ent |Space |
64 * | | | Del | | RCtrl| | | 59 * | | VIM | Del | | RCtrl| | |
65 * `--------------------' `----------------------' 60 * `--------------------' `----------------------'
66 */ 61 */
67// If it accepts an argument (i.e, is a function), it doesn't need KC_. 62// If it accepts an argument (i.e, is a function), it doesn't need KC_.
@@ -69,22 +64,22 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
69[BASE] = LAYOUT_ergodox( // layer 0 : default 64[BASE] = LAYOUT_ergodox( // layer 0 : default
70 // left hand 65 // left hand
71 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_EQL, 66 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_EQL,
72 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), 67 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(CODE),
73 KC_ESC, KC_A, KC_S, KC_D, LT(MOVE, KC_F),KC_G, 68 KC_ESC, KC_A, KC_S, KC_D, LT(VIM, KC_F),KC_G,
74 OSM(MOD_LSFT), CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, TG(CODE), 69 OSM(MOD_LSFT), CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, TG(SYMB),
75 OSM(MOD_LCTL), KC_F4, KC_F5, KC_LGUI,KC_LALT, 70 OSM(MOD_LCTL), KC_F4, KC_F5, KC_LGUI,KC_LALT,
76 LCTL(KC_C),LCTL(KC_V), 71 LCTL(KC_C), LCTL(KC_V),
77 KC_PGUP, 72 KC_PGUP,
78 KC_BSPC,OSL(SYMB), KC_DEL, 73 KC_BSPC,TD(TD_SYM_VIM), KC_DEL,
79 // right hand 74 // right hand
80 TG(CODE), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, 75 TG(CODE), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
81 TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, 76 TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
82 KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, 77 KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
83 MO(MDIA), KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), OSM(MOD_RSFT), 78 MO(MDIA), KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), OSM(MOD_RSFT),
84 KC_LEFT,KC_DOWN,KC_UP, KC_RIGHT, KC_RGUI, 79 KC_LEFT,KC_DOWN,KC_UP, KC_RIGHT, KC_RGUI,
85 KC_RALT, KC_LOCK, 80 LCTL(KC_C), LCTL(KC_V),
86 KC_PGDN, 81 KC_PGDN,
87 KC_RCTL, KC_ENT, KC_SPC 82 KC_RCTL, KC_ENT, KC_SPC
88 ), 83 ),
89/* Keymap 1: Code Layer 84/* Keymap 1: Code Layer
90 * 85 *
@@ -100,10 +95,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
100 * | | | | | | | F12 |GoToIm| FAR | | | 95 * | | | | | | | F12 |GoToIm| FAR | | |
101 * `----------------------------------' `----------------------------------' 96 * `----------------------------------' `----------------------------------'
102 * ,-------------. ,---------------. 97 * ,-------------. ,---------------.
103 * |Format|Build | | Test | DTest | 98 * |Format|Build | | Copy | Paste |
104 * ,------|------|------| |------+--------+------. 99 * ,------|------|------| |------+--------+------.
105 * | | |Refact| |Sort U| | | 100 * | | |Refact| |Sort U| | |
106 * | | |------| |------| | | 101 * | |ACCESS|------| |------| | |
107 * | | | | | | | | 102 * | | | | | | | |
108 * `--------------------' `----------------------' 103 * `--------------------' `----------------------'
109 */ 104 */
@@ -126,7 +121,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
126 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 121 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
127 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 122 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
128 KC_F12, M(GO_TO_IMPL),M(FIND_ALL_REF),KC_TRNS, KC_TRNS, 123 KC_F12, M(GO_TO_IMPL),M(FIND_ALL_REF),KC_TRNS, KC_TRNS,
129 M(TEST), M(DEBUG_TEST), 124 LCTL(KC_C), LCTL(KC_V),
130 M(REMOVE_SORT_USINGS), 125 M(REMOVE_SORT_USINGS),
131 KC_TRNS, KC_TRNS, KC_TRNS 126 KC_TRNS, KC_TRNS, KC_TRNS
132 ), 127 ),
@@ -218,9 +213,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
218 * ,--------------------------------------------------. ,--------------------------------------------------. 213 * ,--------------------------------------------------. ,--------------------------------------------------.
219 * | | | | | | | | | | | | | | | | 214 * | | | | | | | | | | | | | | | |
220 * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| 215 * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
221 * | |KOpen |KType | | | | | | | Copy | | | | Paste| | 216 * | |KOpen |KType |LSHFT | | | | | | Copy | | | | Paste| |
222 * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| 217 * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
223 * | |DLeft |DRight|LCTRL |ACCESS| |------| |------| Left | Down | Up | Right| | | 218 * | |DLeft |DRight|LCTRL | LGUI | |------| |------| Left | Down | Up | Right| | |
224 * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| 219 * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
225 * | |SFT_TB| TAB | | | | | | | | | | | | | 220 * | |SFT_TB| TAB | | | | | | | | | | | | |
226 * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' 221 * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
@@ -230,20 +225,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
230 * | | | | Home | End | 225 * | | | | Home | End |
231 * ,------|------|------| |------+------+------. 226 * ,------|------|------| |------+------+------.
232 * | | | | | | | | 227 * | | | | | | | |
233 * | |LSHIFT|------| |------| | | 228 * | |ACCESS|------| |------| | |
234 * | | | | | | | | 229 * | | | | | | | |
235 * `--------------------' `--------------------' 230 * `--------------------' `--------------------'
236 */ 231 */
237// MEDIA AND MOUSE 232// MEDIA AND MOUSE
238[MOVE] = LAYOUT_ergodox( 233[VIM] = LAYOUT_ergodox(
239 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 234 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
240 KC_TRNS, M(KEEPASS_OPEN),M(KEEPASS_TYPE),KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 235 KC_TRNS, M(KEEPASS_OPEN),M(KEEPASS_TYPE),KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,
241 KC_TRNS, M(DLEFT), M(DRIGHT), KC_LCTL, KC_TRNS, KC_TRNS, 236 KC_TRNS, M(DLEFT), M(DRIGHT), KC_LCTL, KC_LGUI, KC_TRNS,
242 KC_TRNS, M(LSFT_TAB), KC_TAB, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 237 KC_TRNS, M(LSFT_TAB), KC_TAB, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
243 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 238 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
244 KC_TRNS, KC_TRNS, 239 KC_TRNS, KC_TRNS,
245 KC_TRNS, 240 KC_TRNS,
246 KC_TRNS, KC_LSFT, KC_TRNS, 241 KC_TRNS, KC_TRNS, KC_TRNS,
247 // right hand 242 // right hand
248 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 243 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
249 KC_TRNS, LCTL(KC_C),KC_TRNS, KC_TRNS, KC_TRNS, LCTL(KC_V),KC_TRNS, 244 KC_TRNS, LCTL(KC_C),KC_TRNS, KC_TRNS, KC_TRNS, LCTL(KC_V),KC_TRNS,
@@ -349,6 +344,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
349}; 344};
350 345
351bool process_record_user(uint16_t keycode, keyrecord_t *record) { 346bool process_record_user(uint16_t keycode, keyrecord_t *record) {
347 tap_dance_process_record(keycode);
352 switch (keycode) { 348 switch (keycode) {
353 // dynamically generate these. 349 // dynamically generate these.
354 case EPRM: 350 case EPRM:
diff --git a/layouts/community/ergodox/333fred/rules.mk b/layouts/community/ergodox/333fred/rules.mk
index d8e081eaa..31e723732 100644
--- a/layouts/community/ergodox/333fred/rules.mk
+++ b/layouts/community/ergodox/333fred/rules.mk
@@ -3,6 +3,7 @@ LCD_ENABLE = yes
3BACKLIGHT_ENABLE = yes 3BACKLIGHT_ENABLE = yes
4NKRO_ENABLE = yes 4NKRO_ENABLE = yes
5KEY_LOCK_ENABLE = yes 5KEY_LOCK_ENABLE = yes
6TAP_DANCE_ENABLE = yes
6 7
7 8
8 9