diff options
| author | Josef Adamcik <josef.adamcik@gmail.com> | 2020-04-29 20:16:03 +0200 |
|---|---|---|
| committer | Josef Adamcik <josef.adamcik@gmail.com> | 2020-04-30 20:21:08 +0200 |
| commit | 3de4c3ea6a16d64aaf9a86484f57777fe54270ab (patch) | |
| tree | 851deaed7660c2b3113b4d991daf5fc12a27ac97 | |
| parent | a84d23966163a4436309df95bda423d3d0ac4242 (diff) | |
| download | qmk_firmware-3de4c3ea6a16d64aaf9a86484f57777fe54270ab.tar.gz qmk_firmware-3de4c3ea6a16d64aaf9a86484f57777fe54270ab.zip | |
Remove duplicated layers for MAC/WIN support
| -rw-r--r-- | keyboards/sofle/keymaps/default/keymap.c | 302 |
1 files changed, 181 insertions, 121 deletions
diff --git a/keyboards/sofle/keymaps/default/keymap.c b/keyboards/sofle/keymaps/default/keymap.c index e9c07a10f..a23614238 100644 --- a/keyboards/sofle/keymaps/default/keymap.c +++ b/keyboards/sofle/keymaps/default/keymap.c | |||
| @@ -2,50 +2,26 @@ | |||
| 2 | 2 | ||
| 3 | enum sofle_layers { | 3 | enum sofle_layers { |
| 4 | /* _M_XYZ = Mac Os, _W_XYZ = Win/Linux */ | 4 | /* _M_XYZ = Mac Os, _W_XYZ = Win/Linux */ |
| 5 | _M_QWERTY, | 5 | _QWERTY, |
| 6 | _W_QWERTY, | 6 | _COLEMAK, |
| 7 | _M_COLEMAK, | ||
| 8 | _W_COLEMAK, | ||
| 9 | _LOWER, | 7 | _LOWER, |
| 10 | _M_RAISE, | 8 | _RAISE, |
| 11 | _W_RAISE, | ||
| 12 | _ADJUST, | 9 | _ADJUST, |
| 13 | }; | 10 | }; |
| 14 | 11 | ||
| 15 | enum custom_keycodes { | 12 | enum custom_keycodes { |
| 16 | KC_M_QWERTY = SAFE_RANGE, | 13 | KC_QWERTY = SAFE_RANGE, |
| 17 | KC_W_QWERTY, | 14 | KC_COLEMAK, |
| 18 | KC_M_COLEMAK, | 15 | KC_LOWER, |
| 19 | KC_W_COLEMAK, | 16 | KC_RAISE, |
| 20 | KC_M_LOWER, | ||
| 21 | KC_W_LOWER, | ||
| 22 | KC_M_RAISE, | ||
| 23 | KC_W_RAISE, | ||
| 24 | KC_ADJUST, | 17 | KC_ADJUST, |
| 18 | KC_PRVWD, | ||
| 19 | KC_NXTWD, | ||
| 20 | KC_LSTRT, | ||
| 21 | KC_LEND, | ||
| 22 | KC_DLINE | ||
| 25 | }; | 23 | }; |
| 26 | 24 | ||
| 27 | /* Linux/win variants */ | ||
| 28 | #define KC_W_UNDO LCTL(KC_Z) | ||
| 29 | #define KC_W_CUT LCTL(KC_X) | ||
| 30 | #define KC_W_COPY LCTL(KC_C) | ||
| 31 | #define KC_W_PASTE LCTL(KC_V) | ||
| 32 | #define KC_W_PRVWD LCTL(KC_LEFT) | ||
| 33 | #define KC_W_NXTWD LCTL(KC_RIGHT) | ||
| 34 | #define KC_W_LSTRT KC_HOME | ||
| 35 | #define KC_W_LEND KC_END | ||
| 36 | #define KC_W_DLINE LCTL(KC_BSPC) | ||
| 37 | |||
| 38 | /* Mac variants */ | ||
| 39 | #define KC_M_UNDO LGUI(KC_Z) | ||
| 40 | #define KC_M_CUT LGUI(KC_X) | ||
| 41 | #define KC_M_COPY LGUI(KC_C) | ||
| 42 | #define KC_M_PASTE LGUI(KC_V) | ||
| 43 | #define KC_M_PRVWD LALT(KC_LEFT) | ||
| 44 | #define KC_M_NXTWD LALT(KC_RIGHT) | ||
| 45 | #define KC_M_LSTRT LGUI(KC_LEFT) | ||
| 46 | #define KC_M_LEND LGUI(KC_RIGHT) | ||
| 47 | #define KC_M_DLINE LGUI(KC_BSPC) | ||
| 48 | |||
| 49 | #define ______ KC_TRNS | 25 | #define ______ KC_TRNS |
| 50 | #define XXXXXX KC_NO | 26 | #define XXXXXX KC_NO |
| 51 | 27 | ||
| @@ -65,19 +41,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 65 | * | | | | |/ / \ \ | | | | | | 41 | * | | | | |/ / \ \ | | | | | |
| 66 | * `----------------------------------' '------''---------------------------' | 42 | * `----------------------------------' '------''---------------------------' |
| 67 | */ | 43 | */ |
| 68 | [_M_QWERTY] = LAYOUT( \ | 44 | |
| 45 | [_QWERTY] = LAYOUT( \ | ||
| 69 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_GRV, \ | 46 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_GRV, \ |
| 70 | KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \ | 47 | KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \ |
| 71 | KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \ | 48 | KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \ |
| 72 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, XXXXXX,KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ | 49 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, XXXXXX,KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ |
| 73 | KC_LCTRL,KC_LALT,KC_LGUI,KC_M_LOWER, KC_ENT, KC_SPC, KC_M_RAISE, KC_RGUI, KC_RALT, KC_RCTRL \ | 50 | KC_LGUI,KC_LALT,KC_LCTRL, KC_LOWER, KC_ENT, KC_SPC, KC_RAISE, KC_RCTRL, KC_RALT, KC_RGUI \ |
| 74 | ), | ||
| 75 | [_W_QWERTY] = LAYOUT( \ | ||
| 76 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_GRV, \ | ||
| 77 | KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \ | ||
| 78 | KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \ | ||
| 79 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, XXXXXX,KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ | ||
| 80 | KC_LGUI,KC_LALT,KC_LCTRL,KC_W_LOWER, KC_ENT, KC_SPC, KC_W_RAISE, KC_RCTRL, KC_RALT, KC_RGUI \ | ||
| 81 | ), | 51 | ), |
| 82 | /* | 52 | /* |
| 83 | * COLEMAK | 53 | * COLEMAK |
| @@ -95,19 +65,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 95 | * `----------------------------------' '------''---------------------------' | 65 | * `----------------------------------' '------''---------------------------' |
| 96 | */ | 66 | */ |
| 97 | 67 | ||
| 98 | [_M_COLEMAK] = LAYOUT( \ | 68 | [_COLEMAK] = LAYOUT( \ |
| 99 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_GRV, \ | 69 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_GRV, \ |
| 100 | KC_ESC, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, \ | 70 | KC_ESC, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, \ |
| 101 | KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, \ | 71 | KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, \ |
| 102 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, XXXXXX,KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ | 72 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, XXXXXX,KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ |
| 103 | KC_LCTRL,KC_LALT,KC_LGUI,KC_M_LOWER, KC_ENT, KC_SPC, KC_M_RAISE, KC_RGUI, KC_RALT, KC_RCTRL \ | 73 | KC_LGUI,KC_LALT,KC_LCTRL,KC_LOWER, KC_ENT, KC_SPC, KC_RAISE, KC_RCTRL, KC_RALT, KC_RGUI \ |
| 104 | ), | ||
| 105 | [_W_COLEMAK] = LAYOUT( \ | ||
| 106 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_GRV, \ | ||
| 107 | KC_ESC, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, \ | ||
| 108 | KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, \ | ||
| 109 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, XXXXXX,KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ | ||
| 110 | KC_LGUI,KC_LALT,KC_LCTRL,KC_W_LOWER, KC_ENT, KC_SPC, KC_W_RAISE, KC_RCTRL, KC_RALT, KC_RGUI \ | ||
| 111 | ), | 74 | ), |
| 112 | /* LOWER | 75 | /* LOWER |
| 113 | * ,-----------------------------------------. ,-----------------------------------------. | 76 | * ,-----------------------------------------. ,-----------------------------------------. |
| @@ -144,27 +107,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 144 | * | | | | |/ / \ \ | | | | | | 107 | * | | | | |/ / \ \ | | | | | |
| 145 | * `----------------------------------' '------''---------------------------' | 108 | * `----------------------------------' '------''---------------------------' |
| 146 | */ | 109 | */ |
| 147 | [_M_RAISE] = LAYOUT( \ | 110 | [_RAISE] = LAYOUT( \ |
| 148 | ______, ______ , ______ , ______ , ______ , ______, ______, ______ , ______, ______ , ______ ,______, \ | 111 | ______, ______ , ______ , ______ , ______ , ______, ______, ______ , ______, ______ , ______ ,______, \ |
| 149 | ______, KC_INS, KC_PSCR, KC_APP, XXXXXX, XXXXXX, KC_PGUP, KC_M_PRVWD, KC_UP,KC_M_NXTWD,KC_M_DLINE,KC_BSPC, \ | 112 | ______, KC_INS, KC_PSCR, KC_APP, XXXXXX, XXXXXX, KC_PGUP, KC_PRVWD, KC_UP, KC_NXTWD,KC_DLINE, KC_BSPC, \ |
| 150 | ______, KC_LALT, KC_LCTL, KC_LSFT, XXXXXX, KC_CAPS, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_DEL, KC_BSPC, \ | 113 | ______, KC_LALT, KC_LCTL, KC_LSFT, XXXXXX, KC_CAPS, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_DEL, KC_BSPC, \ |
| 151 | ______,KC_M_UNDO, KC_M_CUT,KC_M_COPY,KC_M_PASTE, XXXXXX,______, ______, XXXXXX, KC_M_LSTRT, XXXXXX, KC_M_LEND, XXXXXX, ______, \ | 114 | ______,KC_UNDO, KC_CUT, KC_COPY, KC_PASTE, XXXXXX, ______, ______, XXXXXX, KC_LSTRT, XXXXXX, KC_LEND, XXXXXX, ______, \ |
| 152 | ______, ______, ______, ______, ______, ______, ______, ______, ______, ______ \ | 115 | ______, ______, ______, ______, ______, ______, ______, ______, ______, ______ \ |
| 153 | ), | ||
| 154 | [_W_RAISE] = LAYOUT( \ | ||
| 155 | ______, ______ , ______ , ______ , ______ , ______, ______, ______ , ______, ______ , ______ ,______, \ | ||
| 156 | ______, KC_INS, KC_PSCR, KC_APP, XXXXXX, XXXXXX, KC_PGUP, KC_W_PRVWD, KC_UP,KC_W_NXTWD,KC_W_DLINE, KC_BSPC, \ | ||
| 157 | ______, KC_LALT, KC_LCTL, KC_LSFT, XXXXXX, KC_CAPS, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_DEL, KC_BSPC, \ | ||
| 158 | ______,KC_W_UNDO,KC_W_CUT,KC_W_COPY,KC_W_PASTE,XXXXXX, ______, ______, XXXXXX, KC_W_LSTRT, XXXXXX, KC_W_LEND, XXXXXX, ______, \ | ||
| 159 | ______, ______, ______, ______, ______, ______, ______, ______, ______, ______ \ | ||
| 160 | ), | 116 | ), |
| 161 | /* ADJUST | 117 | /* ADJUST |
| 162 | * ,-----------------------------------------. ,-----------------------------------------. | 118 | * ,-----------------------------------------. ,-----------------------------------------. |
| 163 | * | | | | | | | | | | | | | | | 119 | * | | | | | | | | | | | | | | |
| 164 | * |------+------+------+------+------+------| |------+------+------+------+------+------| | 120 | * |------+------+------+------+------+------| |------+------+------+------+------+------| |
| 165 | * | RESET| |MACQWR|MACCOL| | | | | | | | | | | 121 | * | RESET| |QWERTY|COLEMAK| | | | | | | | | | |
| 166 | * |------+------+------+------+------+------| |------+------+------+------+------+------| | 122 | * |------+------+------+------+------+------| |------+------+------+------+------+------| |
| 167 | * | | |WINQWR|WINCOL| | |-------. ,-------| | VOLDO| MUTE | VOLUP| | | | 123 | * | | |MACWIN| | | |-------. ,-------| | VOLDO| MUTE | VOLUP| | | |
| 168 | * |------+------+------+------+------+------| MUTE | | |------+------+------+------+------+------| | 124 | * |------+------+------+------+------+------| MUTE | | |------+------+------+------+------+------| |
| 169 | * | | | | | | |-------| |-------| | PREV | PLAY | NEXT | | | | 125 | * | | | | | | |-------| |-------| | PREV | PLAY | NEXT | | | |
| 170 | * `-----------------------------------------/ / \ \-----------------------------------------' | 126 | * `-----------------------------------------/ / \ \-----------------------------------------' |
| @@ -173,11 +129,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 173 | * `----------------------------------' '------''---------------------------' | 129 | * `----------------------------------' '------''---------------------------' |
| 174 | */ | 130 | */ |
| 175 | [_ADJUST] = LAYOUT( \ | 131 | [_ADJUST] = LAYOUT( \ |
| 176 | XXXXXX , XXXXXX, XXXXXX , XXXXXX , XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, \ | 132 | XXXXXX , XXXXXX, XXXXXX , XXXXXX , XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, \ |
| 177 | RESET , XXXXXX,KC_M_QWERTY,KC_M_COLEMAK,XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, \ | 133 | RESET , XXXXXX,KC_QWERTY,KC_COLEMAK,CG_TOGG,XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, \ |
| 178 | XXXXXX , XXXXXX,KC_W_QWERTY,KC_W_COLEMAK,XXXXXX, XXXXXX, XXXXXX, KC_VOLD, KC_MUTE, KC_VOLU, XXXXXX, XXXXXX, \ | 134 | XXXXXX , XXXXXX,CG_TOGG, XXXXXX, XXXXXX, XXXXXX, XXXXXX, KC_VOLD, KC_MUTE, KC_VOLU, XXXXXX, XXXXXX, \ |
| 179 | XXXXXX , XXXXXX, XXXXXX , XXXXXX , XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, KC_MPRV, KC_MPLY, KC_MNXT, XXXXXX, XXXXXX, \ | 135 | XXXXXX , XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, XXXXXX, KC_MPRV, KC_MPLY, KC_MNXT, XXXXXX, XXXXXX, \ |
| 180 | ______, ______, ______, ______, ______, ______, ______, ______, ______, ______ \ | 136 | ______, ______, ______, ______, ______, ______, ______, ______, ______, ______ \ |
| 181 | ) | 137 | ) |
| 182 | }; | 138 | }; |
| 183 | 139 | ||
| @@ -198,18 +154,18 @@ static void print_status_narrow(void) { | |||
| 198 | oled_write_P(PSTR("\n\n"), false); | 154 | oled_write_P(PSTR("\n\n"), false); |
| 199 | oled_write_ln_P(PSTR("MODE"), false); | 155 | oled_write_ln_P(PSTR("MODE"), false); |
| 200 | oled_write_ln_P(PSTR(""), false); | 156 | oled_write_ln_P(PSTR(""), false); |
| 157 | if (keymap_config.swap_lctl_lgui) { | ||
| 158 | oled_write_ln_P(PSTR("MAC"), false); | ||
| 159 | } else { | ||
| 160 | oled_write_ln_P(PSTR("WIN"), false); | ||
| 161 | } | ||
| 162 | |||
| 201 | switch (biton32(default_layer_state)) { | 163 | switch (biton32(default_layer_state)) { |
| 202 | case _W_QWERTY: | 164 | case _QWERTY: |
| 203 | oled_write_P(PSTR("Qwrt\nLinux"), false); | 165 | oled_write_ln_P(PSTR("Qwrt"), false); |
| 204 | break; | ||
| 205 | case _M_QWERTY: | ||
| 206 | oled_write_P(PSTR("Qwrt\nMac\n"), false); | ||
| 207 | break; | 166 | break; |
| 208 | case _W_COLEMAK: | 167 | case _COLEMAK: |
| 209 | oled_write_P(PSTR("Clmk\nLinux"), false); | 168 | oled_write_ln_P(PSTR("Clmk"), false); |
| 210 | break; | ||
| 211 | case _M_COLEMAK: | ||
| 212 | oled_write_P(PSTR("Clmk\nMac\n"), false); | ||
| 213 | break; | 169 | break; |
| 214 | default: | 170 | default: |
| 215 | oled_write_P(PSTR("Undefined\n"), false); | 171 | oled_write_P(PSTR("Undefined\n"), false); |
| @@ -218,14 +174,11 @@ static void print_status_narrow(void) { | |||
| 218 | // Print current layer | 174 | // Print current layer |
| 219 | oled_write_ln_P(PSTR("LAYER"), false); | 175 | oled_write_ln_P(PSTR("LAYER"), false); |
| 220 | switch (biton32(layer_state)) { | 176 | switch (biton32(layer_state)) { |
| 221 | case _M_COLEMAK: | 177 | case _COLEMAK: |
| 222 | case _W_COLEMAK: | 178 | case _QWERTY: |
| 223 | case _M_QWERTY: | ||
| 224 | case _W_QWERTY: | ||
| 225 | oled_write_P(PSTR("Base\n"), false); | 179 | oled_write_P(PSTR("Base\n"), false); |
| 226 | break; | 180 | break; |
| 227 | case _M_RAISE: | 181 | case _RAISE: |
| 228 | case _W_RAISE: | ||
| 229 | oled_write_P(PSTR("Raise"), false); | 182 | oled_write_P(PSTR("Raise"), false); |
| 230 | break; | 183 | break; |
| 231 | case _LOWER: | 184 | case _LOWER: |
| @@ -261,75 +214,182 @@ void oled_task_user(void) { | |||
| 261 | 214 | ||
| 262 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 215 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 263 | switch (keycode) { | 216 | switch (keycode) { |
| 264 | case KC_W_QWERTY: | 217 | case KC_QWERTY: |
| 265 | if (record->event.pressed) { | 218 | if (record->event.pressed) { |
| 266 | set_single_persistent_default_layer(_W_QWERTY); | 219 | set_single_persistent_default_layer(_QWERTY); |
| 267 | } | 220 | } |
| 268 | return false; | 221 | return false; |
| 269 | break; | 222 | break; |
| 270 | case KC_M_QWERTY: | 223 | case KC_COLEMAK: |
| 271 | if (record->event.pressed) { | 224 | if (record->event.pressed) { |
| 272 | set_single_persistent_default_layer(_M_QWERTY); | 225 | set_single_persistent_default_layer(_COLEMAK); |
| 273 | } | 226 | } |
| 274 | return false; | 227 | return false; |
| 275 | break; | 228 | break; |
| 276 | case KC_W_COLEMAK: | 229 | case KC_LOWER: |
| 277 | if (record->event.pressed) { | 230 | if (record->event.pressed) { |
| 278 | set_single_persistent_default_layer(_W_COLEMAK); | 231 | layer_on(_LOWER); |
| 232 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 233 | } else { | ||
| 234 | layer_off(_LOWER); | ||
| 235 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 279 | } | 236 | } |
| 280 | return false; | 237 | return false; |
| 281 | break; | 238 | break; |
| 282 | case KC_M_COLEMAK: | 239 | case KC_RAISE: |
| 283 | if (record->event.pressed) { | 240 | if (record->event.pressed) { |
| 284 | set_single_persistent_default_layer(_M_COLEMAK); | 241 | layer_on(_RAISE); |
| 242 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 243 | } else { | ||
| 244 | layer_off(_RAISE); | ||
| 245 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 285 | } | 246 | } |
| 286 | return false; | 247 | return false; |
| 287 | break; | 248 | break; |
| 288 | case KC_M_LOWER: | 249 | case KC_ADJUST: |
| 289 | if (record->event.pressed) { | 250 | if (record->event.pressed) { |
| 290 | layer_on(_LOWER); | 251 | layer_on(_ADJUST); |
| 291 | update_tri_layer(_LOWER, _M_RAISE, _ADJUST); | ||
| 292 | } else { | 252 | } else { |
| 293 | layer_off(_LOWER); | 253 | layer_off(_ADJUST); |
| 294 | update_tri_layer(_LOWER, _M_RAISE, _ADJUST); | ||
| 295 | } | 254 | } |
| 296 | return false; | 255 | return false; |
| 297 | break; | 256 | break; |
| 298 | case KC_M_RAISE: | 257 | case KC_PRVWD: |
| 258 | if (record->event.pressed) { | ||
| 259 | if (keymap_config.swap_lctl_lgui) { | ||
| 260 | register_code16(A(KC_LEFT)); | ||
| 261 | } else { | ||
| 262 | register_code16(C(KC_LEFT)); | ||
| 263 | } | ||
| 264 | } else { | ||
| 265 | if (keymap_config.swap_lctl_lgui) { | ||
| 266 | unregister_code16(A(KC_LEFT)); | ||
| 267 | } else { | ||
| 268 | unregister_code16(C(KC_LEFT)); | ||
| 269 | } | ||
| 270 | } | ||
| 271 | break; | ||
| 272 | case KC_NXTWD: | ||
| 273 | if (record->event.pressed) { | ||
| 274 | if (keymap_config.swap_lctl_lgui) { | ||
| 275 | register_code16(A(KC_RIGHT)); | ||
| 276 | } else { | ||
| 277 | register_code16(C(KC_RIGHT)); | ||
| 278 | } | ||
| 279 | } else { | ||
| 280 | if (keymap_config.swap_lctl_lgui) { | ||
| 281 | unregister_code16(A(KC_RIGHT)); | ||
| 282 | } else { | ||
| 283 | unregister_code16(C(KC_RIGHT)); | ||
| 284 | } | ||
| 285 | } | ||
| 286 | break; | ||
| 287 | case KC_LSTRT: | ||
| 288 | if (record->event.pressed) { | ||
| 289 | if (keymap_config.swap_lctl_lgui) { | ||
| 290 | register_code16(G(KC_LEFT)); | ||
| 291 | } else { | ||
| 292 | register_code(KC_HOME); | ||
| 293 | } | ||
| 294 | } else { | ||
| 295 | if (keymap_config.swap_lctl_lgui) { | ||
| 296 | unregister_code16(G(KC_LEFT)); | ||
| 297 | } else { | ||
| 298 | unregister_code(KC_HOME); | ||
| 299 | } | ||
| 300 | } | ||
| 301 | break; | ||
| 302 | case KC_LEND: | ||
| 299 | if (record->event.pressed) { | 303 | if (record->event.pressed) { |
| 300 | layer_on(_M_RAISE); | 304 | if (keymap_config.swap_lctl_lgui) { |
| 301 | update_tri_layer(_LOWER, _M_RAISE, _ADJUST); | 305 | register_code16(G(KC_RIGHT)); |
| 306 | } else { | ||
| 307 | register_code(KC_END); | ||
| 308 | } | ||
| 302 | } else { | 309 | } else { |
| 303 | layer_off(_M_RAISE); | 310 | if (keymap_config.swap_lctl_lgui) { |
| 304 | update_tri_layer(_LOWER, _M_RAISE, _ADJUST); | 311 | unregister_code16(G(KC_RIGHT)); |
| 312 | } else { | ||
| 313 | unregister_code(KC_END); | ||
| 314 | } | ||
| 315 | } | ||
| 316 | break; | ||
| 317 | case KC_DLINE: | ||
| 318 | if (record->event.pressed) { | ||
| 319 | if (keymap_config.swap_lctl_lgui) { | ||
| 320 | register_code16(G(KC_BSPC)); | ||
| 321 | } else { | ||
| 322 | register_code16(C(KC_BSPC)); | ||
| 323 | } | ||
| 324 | } else { | ||
| 325 | if (keymap_config.swap_lctl_lgui) { | ||
| 326 | unregister_code16(G(KC_BSPC)); | ||
| 327 | } else { | ||
| 328 | unregister_code16(C(KC_BSPC)); | ||
| 329 | } | ||
| 330 | } | ||
| 331 | break; | ||
| 332 | case KC_COPY: | ||
| 333 | if (record->event.pressed) { | ||
| 334 | if (keymap_config.swap_lctl_lgui) { | ||
| 335 | register_code16(G(KC_C)); | ||
| 336 | } else { | ||
| 337 | register_code16(C(KC_C)); | ||
| 338 | } | ||
| 339 | } else { | ||
| 340 | if (keymap_config.swap_lctl_lgui) { | ||
| 341 | unregister_code16(G(KC_C)); | ||
| 342 | } else { | ||
| 343 | unregister_code16(C(KC_C)); | ||
| 344 | } | ||
| 305 | } | 345 | } |
| 306 | return false; | 346 | return false; |
| 307 | break; | 347 | break; |
| 308 | case KC_W_LOWER: | 348 | case KC_PASTE: |
| 309 | if (record->event.pressed) { | 349 | if (record->event.pressed) { |
| 310 | layer_on(_LOWER); | 350 | if (keymap_config.swap_lctl_lgui) { |
| 311 | update_tri_layer(_LOWER, _W_RAISE, _ADJUST); | 351 | register_code16(G(KC_V)); |
| 352 | } else { | ||
| 353 | register_code16(C(KC_V)); | ||
| 354 | } | ||
| 312 | } else { | 355 | } else { |
| 313 | layer_off(_LOWER); | 356 | if (keymap_config.swap_lctl_lgui) { |
| 314 | update_tri_layer(_LOWER, _W_RAISE, _ADJUST); | 357 | unregister_code16(G(KC_V)); |
| 358 | } else { | ||
| 359 | unregister_code16(C(KC_V)); | ||
| 360 | } | ||
| 315 | } | 361 | } |
| 316 | return false; | 362 | return false; |
| 317 | break; | 363 | break; |
| 318 | case KC_W_RAISE: | 364 | case KC_CUT: |
| 319 | if (record->event.pressed) { | 365 | if (record->event.pressed) { |
| 320 | layer_on(_W_RAISE); | 366 | if (keymap_config.swap_lctl_lgui) { |
| 321 | update_tri_layer(_LOWER, _W_RAISE, _ADJUST); | 367 | register_code16(G(KC_X)); |
| 368 | } else { | ||
| 369 | register_code16(C(KC_X)); | ||
| 370 | } | ||
| 322 | } else { | 371 | } else { |
| 323 | layer_off(_W_RAISE); | 372 | if (keymap_config.swap_lctl_lgui) { |
| 324 | update_tri_layer(_LOWER, _W_RAISE, _ADJUST); | 373 | unregister_code16(G(KC_X)); |
| 374 | } else { | ||
| 375 | unregister_code16(C(KC_X)); | ||
| 376 | } | ||
| 325 | } | 377 | } |
| 326 | return false; | 378 | return false; |
| 327 | break; | 379 | break; |
| 328 | case KC_ADJUST: | 380 | case KC_UNDO: |
| 329 | if (record->event.pressed) { | 381 | if (record->event.pressed) { |
| 330 | layer_on(_ADJUST); | 382 | if (keymap_config.swap_lctl_lgui) { |
| 383 | register_code16(G(KC_Z)); | ||
| 384 | } else { | ||
| 385 | register_code16(C(KC_Z)); | ||
| 386 | } | ||
| 331 | } else { | 387 | } else { |
| 332 | layer_off(_ADJUST); | 388 | if (keymap_config.swap_lctl_lgui) { |
| 389 | unregister_code16(G(KC_Z)); | ||
| 390 | } else { | ||
| 391 | unregister_code16(C(KC_Z)); | ||
| 392 | } | ||
| 333 | } | 393 | } |
| 334 | return false; | 394 | return false; |
| 335 | break; | 395 | break; |
