diff options
Diffstat (limited to 'layouts/community/ergodox/qwerty_code_friendly/keymap.c')
| -rw-r--r-- | layouts/community/ergodox/qwerty_code_friendly/keymap.c | 89 |
1 files changed, 58 insertions, 31 deletions
diff --git a/layouts/community/ergodox/qwerty_code_friendly/keymap.c b/layouts/community/ergodox/qwerty_code_friendly/keymap.c index 520985204..a55a1e8d9 100644 --- a/layouts/community/ergodox/qwerty_code_friendly/keymap.c +++ b/layouts/community/ergodox/qwerty_code_friendly/keymap.c | |||
| @@ -11,11 +11,20 @@ | |||
| 11 | // #define CFQ_USE_MOMENTARY_LAYER_KEYS | 11 | // #define CFQ_USE_MOMENTARY_LAYER_KEYS |
| 12 | // #define CFQ_USE_EXPEREMENTAL_LAYER | 12 | // #define CFQ_USE_EXPEREMENTAL_LAYER |
| 13 | 13 | ||
| 14 | // keep enabled for now | ||
| 15 | #define CFQ_USE_DYNAMIC_MACRO | ||
| 16 | |||
| 14 | #if !defined(CFQ_USER_KEY1) | 17 | #if !defined(CFQ_USER_KEY1) |
| 15 | #define CFQ_USER_KEY1 KC_F13 | 18 | #define CFQ_USER_KEY1 KC_SPC |
| 16 | #endif | 19 | #endif |
| 17 | #if !defined(CFQ_USER_KEY2) | 20 | #if !defined(CFQ_USER_KEY2) |
| 18 | #define CFQ_USER_KEY2 KC_APP | 21 | #define CFQ_USER_KEY2 KC_ENT |
| 22 | #endif | ||
| 23 | #if !defined(CFQ_USER_KEY3) | ||
| 24 | #define CFQ_USER_KEY3 CFQ_KC_FN3 | ||
| 25 | #endif | ||
| 26 | #if !defined(CFQ_USER_KEY4) | ||
| 27 | #define CFQ_USER_KEY4 KC_APP | ||
| 19 | #endif | 28 | #endif |
| 20 | 29 | ||
| 21 | #define BASE 0 // default layer | 30 | #define BASE 0 // default layer |
| @@ -29,9 +38,16 @@ enum custom_keycodes { | |||
| 29 | PLACEHOLDER = SAFE_RANGE, // can always be here | 38 | PLACEHOLDER = SAFE_RANGE, // can always be here |
| 30 | EPRM, | 39 | EPRM, |
| 31 | VRSN, | 40 | VRSN, |
| 32 | RGB_SLD | 41 | RGB_SLD, |
| 42 | #ifdef CFQ_USE_DYNAMIC_MACRO | ||
| 43 | DYNAMIC_MACRO_RANGE, | ||
| 44 | #endif | ||
| 33 | }; | 45 | }; |
| 34 | 46 | ||
| 47 | #ifdef CFQ_USE_DYNAMIC_MACRO | ||
| 48 | #include "dynamic_macro.h" | ||
| 49 | #endif | ||
| 50 | |||
| 35 | // macros | 51 | // macros |
| 36 | #ifdef CFQ_USE_EXPEREMENTAL_LAYER | 52 | #ifdef CFQ_USE_EXPEREMENTAL_LAYER |
| 37 | #define M_SPACES_1 2 | 53 | #define M_SPACES_1 2 |
| @@ -77,13 +93,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 77 | * |--------+------+------+------+------+------| [ | | ] |------+------+------+------+------+--------| | 93 | * |--------+------+------+------+------+------| [ | | ] |------+------+------+------+------+--------| |
| 78 | * | LShift | Z | X | C | V | B | | | | N | M | , | . | / | RShift | | 94 | * | LShift | Z | X | C | V | B | | | | N | M | , | . | / | RShift | |
| 79 | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' | 95 | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' |
| 80 | * | LCtl |Super | Alt | USR2 |Space | | Left | Down | Up |Right | Del | | 96 | * | LCtl |Super | Alt | USR4 |Space | | Left | Down | Up |Right | Del | |
| 81 | * `----------------------------------' `----------------------------------' | 97 | * `----------------------------------' `----------------------------------' |
| 82 | * ,-------------. ,-------------. | 98 | * ,-------------. ,-------------. |
| 83 | * | Ins | ~L3 | | Home | End | | 99 | * | Ins | USR3 | | Home | End | |
| 84 | * ,------|------|------| |------+------+------. | 100 | * ,------|------|------| |------+------+------. |
| 85 | * | | | ~L2 | | PgUp | | | | 101 | * | | | ~L2 | | PgUp | | | |
| 86 | * |Space | USR1 |------| |------|Enter |Space | | 102 | * | USR1 | USR2 |------| |------|Enter |Space | |
| 87 | * | | | ~L1 | | PgDn | | | | 103 | * | | | ~L1 | | PgDn | | | |
| 88 | * `--------------------' `--------------------' | 104 | * `--------------------' `--------------------' |
| 89 | */ | 105 | */ |
| @@ -95,10 +111,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 95 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LPRN, | 111 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LPRN, |
| 96 | KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, | 112 | KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, |
| 97 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LBRC, | 113 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LBRC, |
| 98 | KC_LCTL, KC_LGUI, KC_LALT, CFQ_USER_KEY2, KC_SPC, | 114 | KC_LCTL, KC_LGUI, KC_LALT, CFQ_USER_KEY4, KC_SPC, |
| 99 | KC_INS, CFQ_KC_FN3, | 115 | KC_INS, CFQ_USER_KEY3, |
| 100 | CFQ_KC_FN2, | 116 | CFQ_KC_FN2, |
| 101 | KC_SPC, CFQ_USER_KEY1, CFQ_KC_FN1, | 117 | CFQ_USER_KEY1, CFQ_USER_KEY2, CFQ_KC_FN1, |
| 102 | // right hand | 118 | // right hand |
| 103 | KC_RCBR, KC_CIRC, KC_AMPR, KC_ASTR,KC_MINS, KC_EQL, KC_BSPC, | 119 | KC_RCBR, KC_CIRC, KC_AMPR, KC_ASTR,KC_MINS, KC_EQL, KC_BSPC, |
| 104 | KC_RPRN, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, | 120 | KC_RPRN, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, |
| @@ -127,10 +143,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 127 | * | | | | | | | 0 | | . | + | | | 143 | * | | | | | | | 0 | | . | + | | |
| 128 | * `----------------------------------' `----------------------------------' | 144 | * `----------------------------------' `----------------------------------' |
| 129 | * ,-------------. ,---------------. | 145 | * ,-------------. ,---------------. |
| 130 | * | | | | | | | 146 | * |Start1|Start2| | | | |
| 131 | * ,------|------|------| |------+--------+------. | 147 | * ,------|------|------| |------+--------+------. |
| 132 | * | | | | | | | | | 148 | * | | | Stop | | | | | |
| 133 | * | | |------| |------| | | | 149 | * |Play1 |Play2 |------| |------| | | |
| 134 | * | | | | | | | | | 150 | * | | | | | | | | |
| 135 | * `--------------------' `----------------------' | 151 | * `--------------------' `----------------------' |
| 136 | */ | 152 | */ |
| @@ -142,9 +158,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 142 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, M(M_ARROW_RMINUS), | 158 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, M(M_ARROW_RMINUS), |
| 143 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, M(M_BRACKET_IN_ANG), M(M_BRACKET_IN_BRC), | 159 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, M(M_BRACKET_IN_ANG), M(M_BRACKET_IN_BRC), |
| 144 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 160 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, |
| 161 | #ifdef CFQ_USE_DYNAMIC_MACRO | ||
| 162 | DYN_REC_START1, DYN_REC_START2, | ||
| 163 | DYN_REC_STOP, | ||
| 164 | DYN_MACRO_PLAY1, DYN_MACRO_PLAY2, KC_TRNS, | ||
| 165 | #else | ||
| 145 | KC_TRNS, KC_TRNS, | 166 | KC_TRNS, KC_TRNS, |
| 146 | KC_TRNS, | 167 | KC_TRNS, |
| 147 | KC_TRNS, KC_TRNS, KC_TRNS, | 168 | KC_TRNS, KC_TRNS, KC_TRNS, |
| 169 | #endif | ||
| 148 | // right hand | 170 | // right hand |
| 149 | M(M_BRACKET_OUT_CBR), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS, | 171 | M(M_BRACKET_OUT_CBR), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS, |
| 150 | M(M_BRACKET_OUT_PRN), M(M_ARROW_LEQL), KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_SLASH, KC_F11, | 172 | M(M_BRACKET_OUT_PRN), M(M_ARROW_LEQL), KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_SLASH, KC_F11, |
| @@ -201,13 +223,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 201 | /* Keymap 3: My own testing keys! | 223 | /* Keymap 3: My own testing keys! |
| 202 | * | 224 | * |
| 203 | * ,--------------------------------------------------. ,--------------------------------------------------. | 225 | * ,--------------------------------------------------. ,--------------------------------------------------. |
| 204 | * | | Spc1 | Spc2 | Spc3 | Spc4 | Spc5 | | | | Spc6 | Spc7 | Spc8 | | | | | 226 | * | | | | { | } | | } | | | | | | | | | |
| 205 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| | 227 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| |
| 206 | * | | | | | | | | | | | | | | | | | 228 | * | | | | ( | ) | | ) | | | Spc7 | Spc8 | | | | | |
| 207 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | ||
| 208 | * | | | | | | |------| |------| | | | | | | | ||
| 209 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | 229 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| |
| 210 | * | | | | | | | | | | | | | | | | | 230 | * | | | | [ | ] | |------| |------| Spc4 | Spc5 | Spc6 | | | | |
| 231 | * |--------+------+------+------+------+------| ] | | |------+------+------+------+------+--------| | ||
| 232 | * | | | | < | > | | | | | Spc1 | Spc2 | Spc3 | | | | | ||
| 211 | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' | 233 | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' |
| 212 | * | | | | | | | | | | | | | 234 | * | | | | | | | | | | | | |
| 213 | * `----------------------------------' `----------------------------------' | 235 | * `----------------------------------' `----------------------------------' |
| @@ -220,23 +242,23 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 220 | * `--------------------' `--------------------' | 242 | * `--------------------' `--------------------' |
| 221 | */ | 243 | */ |
| 222 | 244 | ||
| 223 | // EXPEREMENT | 245 | // EXPERIMENT |
| 224 | [EXPR] = LAYOUT_ergodox( | 246 | [EXPR] = LAYOUT_ergodox( |
| 225 | // left hand | 247 | // left hand |
| 226 | KC_TRNS, M(M_SPACES_1), M(M_SPACES_2), M(M_SPACES_3), M(M_SPACES_4), M(M_SPACES_5), KC_TRNS, | 248 | KC_TRNS, KC_TRNS, KC_TRNS, KC_LCBR, KC_RCBR, KC_TRNS, KC_RCBR, |
| 227 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 249 | KC_TRNS, KC_TRNS, KC_TRNS, KC_LPRN, KC_RPRN, KC_TRNS, KC_RPRN, |
| 228 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 250 | KC_TRNS, KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, KC_TRNS, |
| 229 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 251 | KC_TRNS, KC_TRNS, KC_TRNS, S(KC_COMM), S(KC_DOT), KC_TRNS, KC_RBRC, |
| 230 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 252 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, |
| 231 | KC_TRNS, KC_TRNS, | 253 | KC_TRNS, KC_TRNS, |
| 232 | KC_TRNS, | 254 | KC_TRNS, |
| 233 | KC_TRNS, KC_TRNS, KC_TRNS, | 255 | KC_TRNS, KC_TRNS, KC_TRNS, |
| 234 | // right hand | 256 | // right hand |
| 235 | KC_TRNS, M(M_SPACES_6), M(M_SPACES_7), M(M_SPACES_8), KC_TRNS, KC_TRNS, KC_TRNS, | 257 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, |
| 236 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 258 | KC_TRNS, KC_TRNS, M(M_SPACES_7), M(M_SPACES_8), KC_TRNS, KC_TRNS, KC_TRNS, |
| 237 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 259 | KC_TRNS, M(M_SPACES_4), M(M_SPACES_5), M(M_SPACES_6), KC_TRNS, KC_TRNS, |
| 238 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 260 | KC_TRNS, KC_TRNS, M(M_SPACES_1), M(M_SPACES_2), M(M_SPACES_3), KC_TRNS, KC_TRNS, |
| 239 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 261 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, |
| 240 | KC_TRNS, KC_TRNS, | 262 | KC_TRNS, KC_TRNS, |
| 241 | KC_TRNS, | 263 | KC_TRNS, |
| 242 | KC_TRNS, KC_TRNS, KC_TRNS | 264 | KC_TRNS, KC_TRNS, KC_TRNS |
| @@ -314,6 +336,11 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | |||
| 314 | }; | 336 | }; |
| 315 | 337 | ||
| 316 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 338 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 339 | #ifdef CFQ_USE_DYNAMIC_MACRO | ||
| 340 | if (!process_record_dynamic_macro(keycode, record)) { | ||
| 341 | return false; | ||
| 342 | } | ||
| 343 | #endif | ||
| 317 | switch (keycode) { | 344 | switch (keycode) { |
| 318 | // dynamically generate these. | 345 | // dynamically generate these. |
| 319 | case EPRM: | 346 | case EPRM: |
