diff options
28 files changed, 1057 insertions, 1184 deletions
diff --git a/keyboards/atreus/keymaps/xyverz/keymap.c b/keyboards/atreus/keymaps/xyverz/keymap.c index fe1ca295d..7653206ae 100644 --- a/keyboards/atreus/keymaps/xyverz/keymap.c +++ b/keyboards/atreus/keymaps/xyverz/keymap.c | |||
| @@ -3,8 +3,6 @@ | |||
| 3 | // Preonic keyboards by Jack Humbert. | 3 | // Preonic keyboards by Jack Humbert. |
| 4 | 4 | ||
| 5 | #include QMK_KEYBOARD_H | 5 | #include QMK_KEYBOARD_H |
| 6 | #include "action_layer.h" | ||
| 7 | #include "eeconfig.h" | ||
| 8 | 6 | ||
| 9 | extern keymap_config_t keymap_config; | 7 | extern keymap_config_t keymap_config; |
| 10 | 8 | ||
| @@ -12,13 +10,16 @@ extern keymap_config_t keymap_config; | |||
| 12 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | 10 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. |
| 13 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | 11 | // Layer names don't all need to be of the same length, obviously, and you can also skip them |
| 14 | // entirely and just use numbers. | 12 | // entirely and just use numbers. |
| 15 | #define _DVORAK 0 | 13 | |
| 16 | #define _QWERTY 1 | 14 | enum layer_names { |
| 17 | #define _COLEMAK 2 | 15 | _DVORAK, |
| 18 | #define _DVORMAC 3 | 16 | _QWERTY, |
| 19 | #define _LOWER 4 | 17 | _COLEMAK, |
| 20 | #define _RAISE 5 | 18 | _DVORMAC, |
| 21 | #define _ADJUST 16 | 19 | _LOWER, |
| 20 | _RAISE, | ||
| 21 | _ADJUST | ||
| 22 | }; | ||
| 22 | 23 | ||
| 23 | enum planck_keycodes { | 24 | enum planck_keycodes { |
| 24 | DVORAK = SAFE_RANGE, | 25 | DVORAK = SAFE_RANGE, |
| @@ -27,7 +28,7 @@ enum planck_keycodes { | |||
| 27 | DVORMAC, | 28 | DVORMAC, |
| 28 | LOWER, | 29 | LOWER, |
| 29 | RAISE, | 30 | RAISE, |
| 30 | BACKLIT | 31 | ADJUST |
| 31 | }; | 32 | }; |
| 32 | 33 | ||
| 33 | // Adding macros to make the keymaps below much easier to read. | 34 | // Adding macros to make the keymaps below much easier to read. |
| @@ -37,6 +38,9 @@ enum planck_keycodes { | |||
| 37 | #define ALTENT ALT_T(KC_ENT) | 38 | #define ALTENT ALT_T(KC_ENT) |
| 38 | #define ESCTRL CTL_T(KC_ESC) | 39 | #define ESCTRL CTL_T(KC_ESC) |
| 39 | #define TABALT ALT_T(KC_TAB) | 40 | #define TABALT ALT_T(KC_TAB) |
| 41 | #define ADJUST MO(_ADJUST) | ||
| 42 | #define LOWER MO(_LOWER) | ||
| 43 | #define RAISE MO(_RAISE) | ||
| 40 | 44 | ||
| 41 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 45 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 42 | /* Dvorak Layer | 46 | /* Dvorak Layer |
| @@ -159,57 +163,31 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 159 | ), | 163 | ), |
| 160 | }; | 164 | }; |
| 161 | 165 | ||
| 162 | void persistent_default_layer_set(uint16_t default_layer) { | 166 | layer_state_t layer_state_set_user(layer_state_t state) { |
| 163 | eeconfig_update_default_layer(default_layer); | 167 | return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); |
| 164 | default_layer_set(default_layer); | ||
| 165 | } | 168 | } |
| 166 | |||
| 167 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 169 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 168 | switch (keycode) { | 170 | switch (keycode) { |
| 169 | case QWERTY: | 171 | case DVORAK: |
| 170 | if (record->event.pressed) { | 172 | if (record->event.pressed) { |
| 171 | persistent_default_layer_set(1UL<<_QWERTY); | 173 | set_single_persistent_default_layer(_DVORAK); |
| 172 | } | 174 | } |
| 173 | return false; | 175 | return false; |
| 174 | break; | ||
| 175 | case COLEMAK: | 176 | case COLEMAK: |
| 176 | if (record->event.pressed) { | 177 | if (record->event.pressed) { |
| 177 | persistent_default_layer_set(1UL<<_COLEMAK); | 178 | set_single_persistent_default_layer(_COLEMAK); |
| 178 | } | 179 | } |
| 179 | return false; | 180 | return false; |
| 180 | break; | 181 | case QWERTY: |
| 181 | case DVORAK: | ||
| 182 | if (record->event.pressed) { | 182 | if (record->event.pressed) { |
| 183 | persistent_default_layer_set(1UL<<_DVORAK); | 183 | set_single_persistent_default_layer(_QWERTY); |
| 184 | } | 184 | } |
| 185 | return false; | 185 | return false; |
| 186 | break; | ||
| 187 | case DVORMAC: | 186 | case DVORMAC: |
| 188 | if (record->event.pressed) { | 187 | if (record->event.pressed) { |
| 189 | persistent_default_layer_set(1UL<<_DVORMAC); | 188 | set_single_persistent_default_layer(_DVORMAC); |
| 190 | } | 189 | } |
| 191 | return false; | 190 | return false; |
| 192 | break; | ||
| 193 | case LOWER: | ||
| 194 | if (record->event.pressed) { | ||
| 195 | layer_on(_LOWER); | ||
| 196 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 197 | } else { | ||
| 198 | layer_off(_LOWER); | ||
| 199 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 200 | } | ||
| 201 | return false; | ||
| 202 | break; | ||
| 203 | case RAISE: | ||
| 204 | if (record->event.pressed) { | ||
| 205 | layer_on(_RAISE); | ||
| 206 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 207 | } else { | ||
| 208 | layer_off(_RAISE); | ||
| 209 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 210 | } | ||
| 211 | return false; | ||
| 212 | break; | ||
| 213 | } | 191 | } |
| 214 | return true; | 192 | return true; |
| 215 | }; | 193 | } \ No newline at end of file |
diff --git a/keyboards/atreus/keymaps/xyverz/readme.md b/keyboards/atreus/keymaps/xyverz/readme.md index ec7d836c1..aa44f01da 100644 --- a/keyboards/atreus/keymaps/xyverz/readme.md +++ b/keyboards/atreus/keymaps/xyverz/readme.md | |||
| @@ -9,7 +9,7 @@ to a final go with this. | |||
| 9 | 9 | ||
| 10 | I'm using MOD_TAP quite a bit in this keymap. On all layers, R4 pinky keys use mod-tap and are SHIFT when held | 10 | I'm using MOD_TAP quite a bit in this keymap. On all layers, R4 pinky keys use mod-tap and are SHIFT when held |
| 11 | and their normal keys when tapped. In addition, ESC and TAB are also set as Ctrl and ALT respectively when held, | 11 | and their normal keys when tapped. In addition, ESC and TAB are also set as Ctrl and ALT respectively when held, |
| 12 | and Enter/ALT on the right thumb key for all layers. | 12 | and Enter/ALT on the right thumb key for all alpha layers. |
| 13 | 13 | ||
| 14 | I've enabled persistent keymaps for Qwerty, Dvorak and Colemak layers, similar to the default Planck layouts. | 14 | I've enabled persistent keymaps for Qwerty, Dvorak and Colemak layers, similar to the default Planck layouts. |
| 15 | 15 | ||
| @@ -44,7 +44,7 @@ Control. | |||
| 44 | | Esc | Tab | GUI | LOWER| BkSp |------'`------| Spc | RAISE| - | ' | \ | | 44 | | Esc | Tab | GUI | LOWER| BkSp |------'`------| Spc | RAISE| - | ' | \ | |
| 45 | `----------------------------------' `----------------------------------' | 45 | `----------------------------------' `----------------------------------' |
| 46 | 46 | ||
| 47 | ### Keymap 2: Colemak layer | 47 | ### Layer 2: Colemak layer |
| 48 | 48 | ||
| 49 | ,----------------------------------. ,----------------------------------. | 49 | ,----------------------------------. ,----------------------------------. |
| 50 | | Q | W | F | P | G | | J | L | U | Y | L | | 50 | | Q | W | F | P | G | | J | L | U | Y | L | |
| @@ -56,7 +56,7 @@ Control. | |||
| 56 | | Esc | Tab | GUI | LOWER| BkSp |------'`------| Spc | RAISE| - | ' | \ | | 56 | | Esc | Tab | GUI | LOWER| BkSp |------'`------| Spc | RAISE| - | ' | \ | |
| 57 | `----------------------------------' `----------------------------------' | 57 | `----------------------------------' `----------------------------------' |
| 58 | 58 | ||
| 59 | ### Keymap 3: Dvorak for Mac layout | 59 | ### Layer 3: Dvorak for Mac layer |
| 60 | 60 | ||
| 61 | ,----------------------------------. ,----------------------------------. | 61 | ,----------------------------------. ,----------------------------------. |
| 62 | | ' | , | . | P | Y | | F | G | C | R | L | | 62 | | ' | , | . | P | Y | | F | G | C | R | L | |
| @@ -68,7 +68,7 @@ Control. | |||
| 68 | | Esc | Tab | GUI | LOWER| BkSp |------'`------| Spc | RAISE| - | / | \ | | 68 | | Esc | Tab | GUI | LOWER| BkSp |------'`------| Spc | RAISE| - | / | \ | |
| 69 | `----------------------------------' `----------------------------------' | 69 | `----------------------------------' `----------------------------------' |
| 70 | 70 | ||
| 71 | ### Keymap 4: LOWER layer | 71 | ### Layer 4: LOWER layer |
| 72 | 72 | ||
| 73 | ,----------------------------------. ,----------------------------------. | 73 | ,----------------------------------. ,----------------------------------. |
| 74 | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | | 74 | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | |
| @@ -81,7 +81,7 @@ Control. | |||
| 81 | `----------------------------------' `----------------------------------' | 81 | `----------------------------------' `----------------------------------' |
| 82 | 82 | ||
| 83 | 83 | ||
| 84 | ### Keymap 5: RAISE layer | 84 | ### Layer 5: RAISE layer |
| 85 | 85 | ||
| 86 | ,----------------------------------. ,----------------------------------. | 86 | ,----------------------------------. ,----------------------------------. |
| 87 | | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | | 87 | | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | |
| @@ -93,7 +93,7 @@ Control. | |||
| 93 | | ` | | | | Del |------'`------| Ins | | | | | | 93 | | ` | | | | Del |------'`------| Ins | | | | | |
| 94 | `----------------------------------' `----------------------------------' | 94 | `----------------------------------' `----------------------------------' |
| 95 | 95 | ||
| 96 | ### Keymap 6: ADJUST layer | 96 | ### Layer 6: ADJUST layer |
| 97 | 97 | ||
| 98 | ,----------------------------------. ,----------------------------------. | 98 | ,----------------------------------. ,----------------------------------. |
| 99 | | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | | 99 | | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | |
diff --git a/keyboards/atreus62/keymaps/xyverz/keymap.c b/keyboards/atreus62/keymaps/xyverz/keymap.c index a7c33ce9e..52b018850 100644 --- a/keyboards/atreus62/keymaps/xyverz/keymap.c +++ b/keyboards/atreus62/keymaps/xyverz/keymap.c | |||
| @@ -14,19 +14,21 @@ | |||
| 14 | CHANGELOG: | 14 | CHANGELOG: |
| 15 | 15 | ||
| 16 | 0.1 - Initial commit. Based off of Profet's default keymap. | 16 | 0.1 - Initial commit. Based off of Profet's default keymap. |
| 17 | 0.2 - Converted to a more Planck/Preonic keymap style file with | 17 | 0.2 - Converted to a more Planck/Preonic keymap style file with |
| 18 | persistent layers enabled. Renamed layers to reflect OLKB maps. | 18 | persistent layers enabled. Renamed layers to reflect OLKB maps. |
| 19 | Added a TODO list. | 19 | Added a TODO list. |
| 20 | 0.3 - Moved location of media & volume keys. Added Print Screen, | 20 | 0.3 - Moved location of media & volume keys. Added Print Screen, |
| 21 | Scroll Lock and Pause keys. Added a WOW gaming layer that | 21 | Scroll Lock and Pause keys. Added a WOW gaming layer that |
| 22 | changes the location of Ctrl & Alt to the thumb keys. Added | 22 | changes the location of Ctrl & Alt to the thumb keys. Added |
| 23 | readme. | 23 | readme. |
| 24 | 0.4 - After more useage, I realized that the ESC key was in the way | 24 | 0.4 - After more useage, I realized that the ESC key was in the way |
| 25 | of my muscle memory (gee, thanks, Planck!) so I moved it to | 25 | of my muscle memory (gee, thanks, Planck!) so I moved it to |
| 26 | the normal Caps Lock position, and moved Caps Lock to the same | 26 | the normal Caps Lock position, and moved Caps Lock to the same |
| 27 | position on the RAISE and LOWER layers. Added code to turn off | 27 | position on the RAISE and LOWER layers. Added code to turn off |
| 28 | the Pro Micro LEDs after flashing. | 28 | the Pro Micro LEDs after flashing. |
| 29 | 0.5 - Converted keymap to LAYOUT standard. | 29 | 0.5 - Converted keymap to LAYOUT standard. |
| 30 | 0.6 - Swapped ESC and GRV in all layers. | ||
| 31 | 0.7 - Brought code up to current standards. | ||
| 30 | 32 | ||
| 31 | TODO: | 33 | TODO: |
| 32 | 34 | ||
| @@ -39,66 +41,59 @@ TODO: | |||
| 39 | // this is the style you want to emulate. | 41 | // this is the style you want to emulate. |
| 40 | // This is the canonical layout file for the Quantum project. If you want to add another keyboard, | 42 | // This is the canonical layout file for the Quantum project. If you want to add another keyboard, |
| 41 | #include QMK_KEYBOARD_H | 43 | #include QMK_KEYBOARD_H |
| 42 | #include "action_layer.h" | 44 | |
| 43 | #include "eeconfig.h" | 45 | enum layer_names { _DVORAK, _QWERTY, _COLEMAK, _WOW, _DESTINY, _LOWER, _RAISE, _ADJUST }; |
| 44 | 46 | ||
| 45 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | 47 | enum atreus52_keycodes { DVORAK = SAFE_RANGE, QWERTY, COLEMAK, WOW, DESTINY, LOWER, RAISE, ADJUST }; |
| 46 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||
| 47 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||
| 48 | // entirely and just use numbers. | ||
| 49 | #define _DVORAK 0 | ||
| 50 | #define _QWERTY 1 | ||
| 51 | #define _COLEMAK 2 | ||
| 52 | #define _WOW 3 | ||
| 53 | #define _LOWER 4 | ||
| 54 | #define _RAISE 5 | ||
| 55 | #define _ADJUST 16 | ||
| 56 | |||
| 57 | enum atreus52_keycodes { | ||
| 58 | DVORAK = SAFE_RANGE, | ||
| 59 | QWERTY, | ||
| 60 | COLEMAK, | ||
| 61 | WOW, | ||
| 62 | LOWER, | ||
| 63 | RAISE | ||
| 64 | }; | ||
| 65 | 48 | ||
| 66 | // Aliases to make the keymap clearer. | 49 | // Aliases to make the keymap clearer. |
| 67 | #define CTL_ENT CTL_T(KC_ENT) | 50 | #define CTL_ENT CTL_T(KC_ENT) |
| 51 | #define LOWER MO(_LOWER) | ||
| 52 | #define RAISE MO(_RAISE) | ||
| 53 | #define ADJUST MO(_ADJUST) | ||
| 68 | 54 | ||
| 55 | // clang-format off | ||
| 69 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 56 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 70 | [_DVORAK] = LAYOUT ( /* dvorak */ | 57 | [_DVORAK] = LAYOUT ( /* dvorak */ |
| 71 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, | 58 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, |
| 72 | KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, | 59 | KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, |
| 73 | KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, | 60 | KC_GRV, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, |
| 74 | KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, | 61 | KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, |
| 75 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, KC_BSPC, KC_LGUI, KC_ENT, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_RCTL | 62 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, KC_BSPC, KC_LGUI, KC_ENT, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_RCTL |
| 76 | ), | 63 | ), |
| 77 | 64 | ||
| 78 | [_QWERTY] = LAYOUT ( /* qwerty */ | 65 | [_QWERTY] = LAYOUT ( /* qwerty */ |
| 79 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, | 66 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, |
| 80 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, | 67 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, |
| 81 | KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, | 68 | KC_GRV, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, |
| 82 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, | 69 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, |
| 83 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, KC_BSPC, KC_LGUI, KC_ENT, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_RCTL | 70 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, KC_BSPC, KC_LGUI, KC_ENT, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_RCTL |
| 84 | ), | 71 | ), |
| 85 | 72 | ||
| 86 | [_COLEMAK] = LAYOUT ( /* colemak */ | 73 | [_COLEMAK] = LAYOUT ( /* colemak */ |
| 87 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, | 74 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, |
| 88 | KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL, | 75 | KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL, |
| 89 | KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, | 76 | KC_GRV, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, |
| 90 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, | 77 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, |
| 91 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, KC_BSPC, KC_LGUI, KC_ENT, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_RCTL | 78 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, KC_BSPC, KC_LGUI, KC_ENT, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_RCTL |
| 92 | ), | 79 | ), |
| 93 | 80 | ||
| 94 | [_WOW] = LAYOUT ( /* Dvorak with minor modifications for playing World of Warcraft */ | 81 | [_WOW] = LAYOUT ( /* Dvorak with minor modifications for playing World of Warcraft */ |
| 95 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, | 82 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, |
| 96 | KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, | 83 | KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, |
| 97 | KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, | 84 | KC_GRV, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, |
| 98 | KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, | 85 | KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, |
| 99 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, KC_BSPC, KC_LALT, CTL_ENT, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT | 86 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, KC_BSPC, KC_LALT, CTL_ENT, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT |
| 100 | ), | 87 | ), |
| 101 | 88 | ||
| 89 | [_DESTINY] = LAYOUT ( /* Dvorak with minor modifications for playing Destiny 2 and other FPS Looters */ | ||
| 90 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, | ||
| 91 | KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, | ||
| 92 | KC_GRV, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, | ||
| 93 | KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, | ||
| 94 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, KC_BSPC, KC_DEL, KC_ENT, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT | ||
| 95 | ), | ||
| 96 | |||
| 102 | [_LOWER] = LAYOUT ( | 97 | [_LOWER] = LAYOUT ( |
| 103 | KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12, | 98 | KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12, |
| 104 | KC_TILD, KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PIPE, | 99 | KC_TILD, KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PIPE, |
| @@ -114,76 +109,48 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 114 | _______, _______, KC_HOME, KC_END, _______, KC_DEL, _______, _______, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______ | 109 | _______, _______, KC_HOME, KC_END, _______, KC_DEL, _______, _______, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______ |
| 115 | ), | 110 | ), |
| 116 | [_ADJUST] = LAYOUT ( | 111 | [_ADJUST] = LAYOUT ( |
| 117 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | 112 | _______, _______, _______, KC_F13, KC_F14, KC_F15, _______, _______, _______, _______, _______, _______, |
| 118 | _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | 113 | _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
| 119 | _______, _______, _______, _______, _______, _______, _______, QWERTY, COLEMAK, DVORAK, _______, WOW, | 114 | _______, _______, _______, _______, _______, _______, _______, QWERTY, COLEMAK, DVORAK, DESTINY, WOW, |
| 120 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | 115 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
| 121 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | 116 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ |
| 122 | ), | 117 | ), |
| 123 | |||
| 124 | }; | 118 | }; |
| 119 | //clang-format on | ||
| 125 | 120 | ||
| 126 | void matrix_init_user(void) { | 121 | void matrix_init_user(void) { |
| 127 | #ifdef BOOTLOADER_CATERINA | 122 | #ifdef BOOTLOADER_CATERINA |
| 128 | // This will disable the red LEDs on the ProMicros | 123 | // This will disable the red LEDs on the ProMicros |
| 129 | DDRD &= ~(1<<5); | 124 | setPinInput(D5); |
| 130 | PORTD &= ~(1<<5); | 125 | writePinLow(D5); |
| 131 | DDRB &= ~(1<<0); | 126 | setPinInput(B0); |
| 132 | PORTB &= ~(1<<0); | 127 | writePinLow(B0); |
| 133 | #endif | 128 | #endif |
| 134 | }; | 129 | }; |
| 135 | 130 | ||
| 136 | void persistent_default_layer_set(uint16_t default_layer) { | 131 | layer_state_t layer_state_set_user(layer_state_t state) { |
| 137 | eeconfig_update_default_layer(default_layer); | 132 | return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); |
| 138 | default_layer_set(default_layer); | 133 | }; |
| 139 | } | ||
| 140 | 134 | ||
| 141 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 135 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 142 | switch (keycode) { | 136 | if (record->event.pressed) { |
| 143 | case QWERTY: | 137 | switch (keycode) { |
| 144 | if (record->event.pressed) { | 138 | case DVORAK: |
| 145 | persistent_default_layer_set(1UL<<_QWERTY); | 139 | set_single_persistent_default_layer(_DVORAK); |
| 146 | } | 140 | return false; |
| 147 | return false; | 141 | case QWERTY: |
| 148 | break; | 142 | set_single_persistent_default_layer(_QWERTY); |
| 149 | case COLEMAK: | 143 | return false; |
| 150 | if (record->event.pressed) { | 144 | case COLEMAK: |
| 151 | persistent_default_layer_set(1UL<<_COLEMAK); | 145 | set_single_persistent_default_layer(_COLEMAK); |
| 152 | } | 146 | return false; |
| 153 | return false; | 147 | case WOW: |
| 154 | break; | 148 | set_single_persistent_default_layer(_WOW); |
| 155 | case DVORAK: | 149 | return false; |
| 156 | if (record->event.pressed) { | 150 | case DESTINY: |
| 157 | persistent_default_layer_set(1UL<<_DVORAK); | 151 | set_single_persistent_default_layer(_DESTINY); |
| 158 | } | 152 | return false; |
| 159 | return false; | 153 | } |
| 160 | break; | 154 | } |
| 161 | case WOW: | 155 | return true; |
| 162 | if (record->event.pressed) { | ||
| 163 | persistent_default_layer_set(1UL<<_WOW); | ||
| 164 | } | ||
| 165 | return false; | ||
| 166 | break; | ||
| 167 | case LOWER: | ||
| 168 | if (record->event.pressed) { | ||
| 169 | layer_on(_LOWER); | ||
| 170 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 171 | } else { | ||
| 172 | layer_off(_LOWER); | ||
| 173 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 174 | } | ||
| 175 | return false; | ||
| 176 | break; | ||
| 177 | case RAISE: | ||
| 178 | if (record->event.pressed) { | ||
| 179 | layer_on(_RAISE); | ||
| 180 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 181 | } else { | ||
| 182 | layer_off(_RAISE); | ||
| 183 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 184 | } | ||
| 185 | return false; | ||
| 186 | break; | ||
| 187 | } | ||
| 188 | return true; | ||
| 189 | }; | 156 | }; |
diff --git a/keyboards/atreus62/keymaps/xyverz/readme.md b/keyboards/atreus62/keymaps/xyverz/readme.md index cf00b65e3..f91a87da4 100644 --- a/keyboards/atreus62/keymaps/xyverz/readme.md +++ b/keyboards/atreus62/keymaps/xyverz/readme.md | |||
| @@ -23,6 +23,13 @@ The bottom row is fairly Kinesis-ish since the Contour and Advantage keyboards h | |||
| 23 | * Moved location of Escape key to Caps Lock position. Moved Caps Lock to same position on Raise/Lower Layers. | 23 | * Moved location of Escape key to Caps Lock position. Moved Caps Lock to same position on Raise/Lower Layers. |
| 24 | * Put Tilde/Grave in the upper-left corner | 24 | * Put Tilde/Grave in the upper-left corner |
| 25 | * Added code to turn off the red LEDs on the Pro Micro after flashing. They were annoying me. | 25 | * Added code to turn off the red LEDs on the Pro Micro after flashing. They were annoying me. |
| 26 | ### 0.5 | ||
| 27 | * Converted keymap to LAYOUT standard. | ||
| 28 | ### 0.6 | ||
| 29 | * Swapped ESC and GRV in all layers. | ||
| 30 | ### 0.7 | ||
| 31 | * Brought code up to new standards (as of 27 June 2019). | ||
| 32 | * Updated this readme file. | ||
| 26 | 33 | ||
| 27 | ### TODO: | 34 | ### TODO: |
| 28 | 35 | ||
| @@ -34,11 +41,11 @@ The bottom row is fairly Kinesis-ish since the Contour and Advantage keyboards h | |||
| 34 | ### Layer 0: Dvorak layer | 41 | ### Layer 0: Dvorak layer |
| 35 | 42 | ||
| 36 | ,-----------------------------------------. ,-----------------------------------------. | 43 | ,-----------------------------------------. ,-----------------------------------------. |
| 37 | | Grv | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | \ | | 44 | | Esc | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | \ | |
| 38 | |------+------+------+------+------+------| |------+------+------+------+------+------| | 45 | |------+------+------+------+------+------| |------+------+------+------+------+------| |
| 39 | | Tab | ' | , | . | P | Y | | F | G | C | R | L | / | | 46 | | Tab | ' | , | . | P | Y | | F | G | C | R | L | / | |
| 40 | |------+------+------+------+------+------| |------+------+------+------+------+------| | 47 | |------+------+------+------+------+------| |------+------+------+------+------+------| |
| 41 | | Esc | A | O | E | U | I | | D | H | T | N | S | - | | 48 | | Grv | A | O | E | U | I | | D | H | T | N | S | - | |
| 42 | |------+------+------+------+------+------|------.,------|------+------+------+------+------+------| | 49 | |------+------+------+------+------+------|------.,------|------+------+------+------+------+------| |
| 43 | | Shft | ; | Q | J | K | X | Gui ||Enter | B | M | W | V | Z | Shft | | 50 | | Shft | ; | Q | J | K | X | Gui ||Enter | B | M | W | V | Z | Shft | |
| 44 | |------+------+------+------+------+------| || |------+------+------+------+------+------| | 51 | |------+------+------+------+------+------| || |------+------+------+------+------+------| |
| @@ -48,11 +55,11 @@ The bottom row is fairly Kinesis-ish since the Contour and Advantage keyboards h | |||
| 48 | ### Layer 1: QWERTY layer | 55 | ### Layer 1: QWERTY layer |
| 49 | 56 | ||
| 50 | ,-----------------------------------------. ,-----------------------------------------. | 57 | ,-----------------------------------------. ,-----------------------------------------. |
| 51 | | Grv | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - | | 58 | | Esc | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - | |
| 52 | |------+------+------+------+------+------| |------+------+------+------+------+------| | 59 | |------+------+------+------+------+------| |------+------+------+------+------+------| |
| 53 | | Tab | Q | W | E | R | T | | Y | U | I | O | P | Del | | 60 | | Tab | Q | W | E | R | T | | Y | U | I | O | P | Del | |
| 54 | |------+------+------+------+------+------| |------+------+------+------+------+------| | 61 | |------+------+------+------+------+------| |------+------+------+------+------+------| |
| 55 | | Esc | A | S | D | F | G | | D | H | T | N | S | ' | | 62 | | Grv | A | S | D | F | G | | D | H | T | N | S | ' | |
| 56 | |------+------+------+------+------+------|------.,------|------+------+------+------+------+------| | 63 | |------+------+------+------+------+------|------.,------|------+------+------+------+------+------| |
| 57 | | Shft | Z | X | C | V | B | Gui ||Enter | N | M | , | . | / | Shft | | 64 | | Shft | Z | X | C | V | B | Gui ||Enter | N | M | , | . | / | Shft | |
| 58 | |------+------+------+------+------+------| || |------+------+------+------+------+------| | 65 | |------+------+------+------+------+------| || |------+------+------+------+------+------| |
| @@ -62,11 +69,11 @@ The bottom row is fairly Kinesis-ish since the Contour and Advantage keyboards h | |||
| 62 | ### Keymap 2: Colemak layer | 69 | ### Keymap 2: Colemak layer |
| 63 | 70 | ||
| 64 | ,-----------------------------------------. ,-----------------------------------------. | 71 | ,-----------------------------------------. ,-----------------------------------------. |
| 65 | | Grv | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - | | 72 | | Esc | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - | |
| 66 | |------+------+------+------+------+------| |------+------+------+------+------+------| | 73 | |------+------+------+------+------+------| |------+------+------+------+------+------| |
| 67 | | Tab | Q | W | F | P | G | | J | U | U | Y | ; | Del | | 74 | | Tab | Q | W | F | P | G | | J | U | U | Y | ; | Del | |
| 68 | |------+------+------+------+------+------| |------+------+------+------+------+------| | 75 | |------+------+------+------+------+------| |------+------+------+------+------+------| |
| 69 | | Esc | A | R | S | T | D | | H | N | E | I | O | ' | | 76 | | Grv | A | R | S | T | D | | H | N | E | I | O | ' | |
| 70 | |------+------+------+------+------+------|------.,------|------+------+------+------+------+------| | 77 | |------+------+------+------+------+------|------.,------|------+------+------+------+------+------| |
| 71 | | Shft | Z | X | C | V | B | Gui ||Enter | K | M | , | . | / | Shft | | 78 | | Shft | Z | X | C | V | B | Gui ||Enter | K | M | , | . | / | Shft | |
| 72 | |------+------+------+------+------+------| || |------+------+------+------+------+------| | 79 | |------+------+------+------+------+------| || |------+------+------+------+------+------| |
| @@ -80,14 +87,28 @@ The bottom row is fairly Kinesis-ish since the Contour and Advantage keyboards h | |||
| 80 | |------+------+------+------+------+------| |------+------+------+------+------+------| | 87 | |------+------+------+------+------+------| |------+------+------+------+------+------| |
| 81 | | Tab | ' | , | . | P | Y | | F | G | C | R | L | / | | 88 | | Tab | ' | , | . | P | Y | | F | G | C | R | L | / | |
| 82 | |------+------+------+------+------+------| |------+------+------+------+------+------| | 89 | |------+------+------+------+------+------| |------+------+------+------+------+------| |
| 83 | | Caps | A | O | E | U | I | | D | H | T | N | S | - | | 90 | | Grv | A | O | E | U | I | | D | H | T | N | S | - | |
| 84 | |------+------+------+------+------+------|------.,------|------+------+------+------+------+------| | 91 | |------+------+------+------+------+------|------.,------|------+------+------+------+------+------| |
| 85 | | Shft | ; | Q | J | K | X | Alt ||Ctrl/ | B | M | W | V | Z | Shft | | 92 | | Shft | ; | Q | J | K | X | Alt ||Ctrl/ | B | M | W | V | Z | Shft | |
| 86 | |------+------+------+------+------+------| ||Enter |------+------+------+------+------+------| | 93 | |------+------+------+------+------+------| ||Enter |------+------+------+------+------+------| |
| 87 | | Ctrl | Alt | Left | Rght | LOWER| BkSp |------'`------| Spc | RAISE| Up | Down | Gui | Ctrl | | 94 | | Ctrl | Alt | Left | Rght | LOWER| BkSp |------'`------| Spc | RAISE| Up | Down | Gui | Ctrl | |
| 88 | `-----------------------------------------' `-----------------------------------------' | 95 | `-----------------------------------------' `-----------------------------------------' |
| 89 | 96 | ||
| 90 | ### Keymap 4: LOWER layer | 97 | ### Layer 4: Destiny layer |
| 98 | |||
| 99 | ,-----------------------------------------. ,-----------------------------------------. | ||
| 100 | | Esc | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | \ | | ||
| 101 | |------+------+------+------+------+------| |------+------+------+------+------+------| | ||
| 102 | | Tab | ' | , | . | P | Y | | F | G | C | R | L | / | | ||
| 103 | |------+------+------+------+------+------| |------+------+------+------+------+------| | ||
| 104 | | Grv | A | O | E | U | I | | D | H | T | N | S | - | | ||
| 105 | |------+------+------+------+------+------|------.,------|------+------+------+------+------+------| | ||
| 106 | | Shft | ; | Q | J | K | X | Del ||Enter | B | M | W | V | Z | Shft | | ||
| 107 | |------+------+------+------+------+------| || |------+------+------+------+------+------| | ||
| 108 | | Ctrl | Alt | Left | Rght | LOWER| BkSp |------'`------| Spc | RAISE| Up | Down | Gui | Ctrl | | ||
| 109 | `-----------------------------------------' `-----------------------------------------' | ||
| 110 | |||
| 111 | ### Keymap 5: LOWER layer | ||
| 91 | 112 | ||
| 92 | ,-----------------------------------------. ,-----------------------------------------. | 113 | ,-----------------------------------------. ,-----------------------------------------. |
| 93 | | F11 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F12 | | 114 | | F11 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F12 | |
| @@ -102,7 +123,7 @@ The bottom row is fairly Kinesis-ish since the Contour and Advantage keyboards h | |||
| 102 | `-----------------------------------------' `-----------------------------------------' | 123 | `-----------------------------------------' `-----------------------------------------' |
| 103 | 124 | ||
| 104 | 125 | ||
| 105 | ### Keymap 5: RAISE layer | 126 | ### Keymap 6: RAISE layer |
| 106 | 127 | ||
| 107 | ,-----------------------------------------. ,-----------------------------------------. | 128 | ,-----------------------------------------. ,-----------------------------------------. |
| 108 | | F11 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F12 | | 129 | | F11 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F12 | |
| @@ -116,7 +137,7 @@ The bottom row is fairly Kinesis-ish since the Contour and Advantage keyboards h | |||
| 116 | | | | Home | End | | Del |------'`------| Ins | | PgUp | PgDn | | | | 137 | | | | Home | End | | Del |------'`------| Ins | | PgUp | PgDn | | | |
| 117 | `-----------------------------------------' `-----------------------------------------' | 138 | `-----------------------------------------' `-----------------------------------------' |
| 118 | 139 | ||
| 119 | ### Keymap 6: ADJUST layer | 140 | ### Keymap 7: ADJUST layer |
| 120 | 141 | ||
| 121 | ,-----------------------------------------. ,-----------------------------------------. | 142 | ,-----------------------------------------. ,-----------------------------------------. |
| 122 | | | | | | | | | | | | | | | | 143 | | | | | | | | | | | | | | | |
diff --git a/keyboards/clueboard/66/keymaps/xyverz/config.h b/keyboards/clueboard/66/keymaps/xyverz/config.h deleted file mode 100644 index 979cbf576..000000000 --- a/keyboards/clueboard/66/keymaps/xyverz/config.h +++ /dev/null | |||
| @@ -1,3 +0,0 @@ | |||
| 1 | #pragma once | ||
| 2 | |||
| 3 | #define TAPPING_TERM 600 // ms | ||
diff --git a/keyboards/clueboard/66/keymaps/xyverz/rules.mk b/keyboards/clueboard/66/keymaps/xyverz/rules.mk deleted file mode 100644 index 6fa110a7b..000000000 --- a/keyboards/clueboard/66/keymaps/xyverz/rules.mk +++ /dev/null | |||
| @@ -1,46 +0,0 @@ | |||
| 1 | #---------------------------------------------------------------------------- | ||
| 2 | # On command line: | ||
| 3 | # | ||
| 4 | # make all = Make software. | ||
| 5 | # | ||
| 6 | # make clean = Clean out built project files. | ||
| 7 | # | ||
| 8 | # make coff = Convert ELF to AVR COFF. | ||
| 9 | # | ||
| 10 | # make extcoff = Convert ELF to AVR Extended COFF. | ||
| 11 | # | ||
| 12 | # make program = Download the hex file to the device. | ||
| 13 | # Please customize your programmer settings(PROGRAM_CMD) | ||
| 14 | # | ||
| 15 | # make teensy = Download the hex file to the device, using teensy_loader_cli. | ||
| 16 | # (must have teensy_loader_cli installed). | ||
| 17 | # | ||
| 18 | # make dfu = Download the hex file to the device, using dfu-programmer (must | ||
| 19 | # have dfu-programmer installed). | ||
| 20 | # | ||
| 21 | # make flip = Download the hex file to the device, using Atmel FLIP (must | ||
| 22 | # have Atmel FLIP installed). | ||
| 23 | # | ||
| 24 | # make dfu-ee = Download the eeprom file to the device, using dfu-programmer | ||
| 25 | # (must have dfu-programmer installed). | ||
| 26 | # | ||
| 27 | # make flip-ee = Download the eeprom file to the device, using Atmel FLIP | ||
| 28 | # (must have Atmel FLIP installed). | ||
| 29 | # | ||
| 30 | # make debug = Start either simulavr or avarice as specified for debugging, | ||
| 31 | # with avr-gdb or avr-insight as the front end for debugging. | ||
| 32 | # | ||
| 33 | # make filename.s = Just compile filename.c into the assembler code only. | ||
| 34 | # | ||
| 35 | # make filename.i = Create a preprocessed source file for use in submitting | ||
| 36 | # bug reports to the GCC project. | ||
| 37 | # | ||
| 38 | # To rebuild project do "make clean" then "make all". | ||
| 39 | #---------------------------------------------------------------------------- | ||
| 40 | |||
| 41 | # Build Options | ||
| 42 | # change to "no" to disable the options, or define them in the makefile.mk in | ||
| 43 | # the appropriate keymap folder that will get included automatically | ||
| 44 | # | ||
| 45 | RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. | ||
| 46 | |||
diff --git a/keyboards/eco/keymaps/xyverz/keymap.c b/keyboards/eco/keymaps/xyverz/keymap.c index 395a014ac..5a1974336 100644 --- a/keyboards/eco/keymaps/xyverz/keymap.c +++ b/keyboards/eco/keymaps/xyverz/keymap.c | |||
| @@ -1,36 +1,13 @@ | |||
| 1 | // This is the canonical layout file for the Quantum project. If you want to add another keyboard, | ||
| 2 | // this is the style you want to emulate. | ||
| 3 | |||
| 4 | // Default ECO Layout | ||
| 5 | // KLE here : http://www.keyboard-layout-editor.com/#/gists/0733eca6b4cb88ff9d7de746803f4039 | ||
| 6 | |||
| 7 | #include QMK_KEYBOARD_H | 1 | #include QMK_KEYBOARD_H |
| 8 | 2 | ||
| 9 | extern keymap_config_t keymap_config; | 3 | enum layer_names { _QWERTY, _COLEMAK, _DVORAK, _LOWER, _RAISE, _ADJUST }; |
| 10 | |||
| 11 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | ||
| 12 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||
| 13 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||
| 14 | // entirely and just use numbers. | ||
| 15 | #define _QWERTY 0 | ||
| 16 | #define _COLEMAK 1 | ||
| 17 | #define _DVORAK 2 | ||
| 18 | #define _LOWER 3 | ||
| 19 | #define _RAISE 4 | ||
| 20 | #define _ADJUST 16 | ||
| 21 | |||
| 22 | enum planck_keycodes { | ||
| 23 | QWERTY = SAFE_RANGE, | ||
| 24 | COLEMAK, | ||
| 25 | DVORAK, | ||
| 26 | LOWER, | ||
| 27 | RAISE, | ||
| 28 | BACKLIT | ||
| 29 | }; | ||
| 30 | 4 | ||
| 31 | // Aliases to make reading the keymap easier | 5 | enum custom_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK, LOWER, RAISE, ADJUST }; |
| 32 | #define GUIBSPC GUI_T(KC_BSPC) // GUI when held, BSPC when tapped. | ||
| 33 | 6 | ||
| 7 | // Aliases to keep the keymap tidy | ||
| 8 | #define GUIBSPC GUI_T(KC_BSPC) // GUI when held, BSPC when tapped. | ||
| 9 | |||
| 10 | // clang-format off | ||
| 34 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 11 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 35 | 12 | ||
| 36 | /* Qwerty | 13 | /* Qwerty |
| @@ -143,53 +120,39 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 143 | ), | 120 | ), |
| 144 | 121 | ||
| 145 | }; | 122 | }; |
| 123 | // clang-format on | ||
| 124 | |||
| 125 | #ifdef AUDIO_ENABLE | ||
| 126 | float tone_qwerty[][2] = SONG(QWERTY_SOUND); | ||
| 127 | float tone_dvorak[][2] = SONG(DVORAK_SOUND); | ||
| 128 | float tone_colemak[][2] = SONG(COLEMAK_SOUND); | ||
| 129 | #endif | ||
| 130 | |||
| 131 | void matrix_init_user(void) { | ||
| 132 | #ifdef BOOTLOADER_CATERINA | ||
| 133 | // This will disable the red LEDs on the ProMicros | ||
| 134 | setPinInput(D5); | ||
| 135 | writePinLow(D5); | ||
| 136 | setPinInput(B0); | ||
| 137 | writePinLow(B0); | ||
| 138 | #endif | ||
| 139 | }; | ||
| 146 | 140 | ||
| 147 | void persistent_default_layer_set(uint16_t default_layer) { | 141 | layer_state_t layer_state_set_user(layer_state_t state) { return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); }; |
| 148 | eeconfig_update_default_layer(default_layer); | ||
| 149 | default_layer_set(default_layer); | ||
| 150 | } | ||
| 151 | 142 | ||
| 152 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 143 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 153 | switch (keycode) { | 144 | if (record->event.pressed) { |
| 154 | case QWERTY: | 145 | switch (keycode) { |
| 155 | if (record->event.pressed) { | 146 | case QWERTY: |
| 156 | persistent_default_layer_set(1UL<<_QWERTY); | 147 | set_single_persistent_default_layer(_QWERTY); |
| 157 | } | 148 | return false; |
| 158 | return false; | 149 | case COLEMAK: |
| 159 | break; | 150 | set_single_persistent_default_layer(_COLEMAK); |
| 160 | case COLEMAK: | 151 | return false; |
| 161 | if (record->event.pressed) { | 152 | case DVORAK: |
| 162 | persistent_default_layer_set(1UL<<_COLEMAK); | 153 | set_single_persistent_default_layer(_DVORAK); |
| 163 | } | 154 | return false; |
| 164 | return false; | 155 | } |
| 165 | break; | 156 | } |
| 166 | case DVORAK: | 157 | return true; |
| 167 | if (record->event.pressed) { | 158 | } \ No newline at end of file |
| 168 | persistent_default_layer_set(1UL<<_DVORAK); | ||
| 169 | } | ||
| 170 | return false; | ||
| 171 | break; | ||
| 172 | case LOWER: | ||
| 173 | if (record->event.pressed) { | ||
| 174 | layer_on(_LOWER); | ||
| 175 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 176 | } else { | ||
| 177 | layer_off(_LOWER); | ||
| 178 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 179 | } | ||
| 180 | return false; | ||
| 181 | break; | ||
| 182 | case RAISE: | ||
| 183 | if (record->event.pressed) { | ||
| 184 | layer_on(_RAISE); | ||
| 185 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 186 | } else { | ||
| 187 | layer_off(_RAISE); | ||
| 188 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 189 | } | ||
| 190 | return false; | ||
| 191 | break; | ||
| 192 | } | ||
| 193 | return true; | ||
| 194 | } | ||
| 195 | |||
diff --git a/keyboards/keebio/fourier/keymaps/xyverz/keymap.c b/keyboards/keebio/fourier/keymaps/xyverz/keymap.c deleted file mode 100644 index 4e864cdef..000000000 --- a/keyboards/keebio/fourier/keymaps/xyverz/keymap.c +++ /dev/null | |||
| @@ -1,84 +0,0 @@ | |||
| 1 | #include QMK_KEYBOARD_H | ||
| 2 | #include "action_layer.h" | ||
| 3 | #include "eeconfig.h" | ||
| 4 | |||
| 5 | extern keymap_config_t keymap_config; | ||
| 6 | |||
| 7 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | ||
| 8 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||
| 9 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||
| 10 | // entirely and just use numbers. | ||
| 11 | #define _BASE 0 | ||
| 12 | #define _FN1 1 | ||
| 13 | #define _FN2 2 | ||
| 14 | |||
| 15 | enum custom_keycodes { | ||
| 16 | QWERTY = SAFE_RANGE, | ||
| 17 | }; | ||
| 18 | |||
| 19 | #define KC_ KC_TRNS | ||
| 20 | #define KC_FN1 MO(_FN1) | ||
| 21 | #define KC_FN2 MO(_FN2) | ||
| 22 | #define KC_ESFN1 LT(_FN1, KC_ESC) | ||
| 23 | #define KC_SPFN1 LT(_FN1, KC_SPACE) | ||
| 24 | #define KC_SPFN2 LT(_FN2, KC_SPACE) | ||
| 25 | #define KC_BSFN1 LT(_FN1, KC_BSPC) | ||
| 26 | #define KC_BSFN2 LT(_FN2, KC_BSPC) | ||
| 27 | #define KC_RST RESET | ||
| 28 | #define KC_DBUG DEBUG | ||
| 29 | #define KC_RTOG RGB_TOG | ||
| 30 | #define KC_RMOD RGB_MOD | ||
| 31 | #define KC_RHUI RGB_HUI | ||
| 32 | #define KC_RHUD RGB_HUD | ||
| 33 | #define KC_RSAI RGB_SAI | ||
| 34 | #define KC_RSAD RGB_SAD | ||
| 35 | #define KC_RVAI RGB_VAI | ||
| 36 | #define KC_RVAD RGB_VAD | ||
| 37 | |||
| 38 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 39 | [_BASE] = LAYOUT_kc( | ||
| 40 | //,----+----+----+----+----+----|----+----+----+----+----+----+----. | ||
| 41 | TAB ,QUOT,COMM,DOT , P , Y , F , G , C , R , L ,SLSH,MINS, | ||
| 42 | //|----`----`----`----`----`----|----`----`----`----`----`----`----| | ||
| 43 | ESC , A , O , E , U , I , D , H , T , N , S , ENTER , | ||
| 44 | //|-----`----`----`----`----`----|----`----`----`----`----`--------| | ||
| 45 | LSFT ,SCLN, Q , J , K , X , B , M , W , V , Z , RSFT , | ||
| 46 | //|-------`----`----`----`----`----|----`----`----`----`----`------| | ||
| 47 | LCTL ,LALT,LGUI ,FN2 , BSPC , SPC , FN1 ,RGUI ,RALT , RCTL | ||
| 48 | //`-----+----+-----+----+--------|--------+-----+-----+-----+------' | ||
| 49 | ), | ||
| 50 | |||
| 51 | [_FN1] = LAYOUT_kc( | ||
| 52 | //,----+----+----+----+----+----|----+----+----+----+----+----+----. | ||
| 53 | GRV , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,MINS,EQL , | ||
| 54 | //|----`----`----`----`----`----|----`----`----`----`----`----`----| | ||
| 55 | CAPS ,RHUI,RSAI,RVAI,VOLU,LBRC,RBRC, , , ,SCLN, , | ||
| 56 | //|-----`----`----`----`----`----|----`----`----`----`----`--------| | ||
| 57 | RMOD ,RHUD,RSAD,RVAD,VOLD,LCBR,RCBR, , , , UP , , | ||
| 58 | //|-------`----`----`----`----`----|----`----`----`----`----`------| | ||
| 59 | RTOG , , , , DEL , INS , ,LEFT ,DOWN , RGHT | ||
| 60 | //`-----+----+-----+----+--------|--------+-----+-----+-----+------' | ||
| 61 | ), | ||
| 62 | |||
| 63 | [_FN2] = LAYOUT_kc( | ||
| 64 | //,----+----+----+----+----+----|----+----+----+----+----+----+----. | ||
| 65 | TILD,EXLM, AT ,HASH,DLR ,PERC,CIRC,AMPR,ASTR,LPRN,RPRN,UNDS,PLUS, | ||
| 66 | //|----`----`----`----`----`----|----`----`----`----`----`----`----| | ||
| 67 | CAPS , , ,INS ,PGUP,HOME, F1 , F2 , F3 , F4 , F5 , F6 , | ||
| 68 | //|-----`----`----`----`----`----|----`----`----`----`----`--------| | ||
| 69 | , , ,DEL ,PGDN,END , F7 , F8 , F9 ,F10 ,F11 , F12 , | ||
| 70 | //|-------`----`----`----`----`----|----`----`----`----`----`------| | ||
| 71 | , , , , DEL , INS , , , , | ||
| 72 | //`-----+----+-----+----+--------|--------+-----+-----+-----+------' | ||
| 73 | ) | ||
| 74 | |||
| 75 | }; | ||
| 76 | |||
| 77 | void matrix_init_user(void) { | ||
| 78 | // This will disable the red LEDs on the ProMicros | ||
| 79 | DDRD &= ~(1<<5); | ||
| 80 | PORTD &= ~(1<<5); | ||
| 81 | DDRB &= ~(1<<0); | ||
| 82 | PORTB &= ~(1<<0); | ||
| 83 | }; | ||
| 84 | |||
diff --git a/keyboards/keebio/iris/keymaps/xyverz/keymap.c b/keyboards/keebio/iris/keymaps/xyverz/keymap.c index 53bf32ac3..cc120c158 100644 --- a/keyboards/keebio/iris/keymaps/xyverz/keymap.c +++ b/keyboards/keebio/iris/keymaps/xyverz/keymap.c | |||
| @@ -1,23 +1,26 @@ | |||
| 1 | #include QMK_KEYBOARD_H | 1 | #include QMK_KEYBOARD_H |
| 2 | #include "action_layer.h" | ||
| 3 | #include "eeconfig.h" | ||
| 4 | 2 | ||
| 5 | extern keymap_config_t keymap_config; | 3 | extern keymap_config_t keymap_config; |
| 6 | 4 | ||
| 7 | #define _QWERTY 0 | 5 | |
| 8 | #define _COLEMAK 1 | 6 | enum layer_names { |
| 9 | #define _DVORAK 2 | 7 | _DVORAK, |
| 10 | #define _LOWER 3 | 8 | _QWERTY, |
| 11 | #define _RAISE 4 | 9 | _COLEMAK, |
| 12 | #define _ADJUST 16 | 10 | _WOW, |
| 11 | _LOWER, | ||
| 12 | _RAISE, | ||
| 13 | _ADJUST | ||
| 14 | }; | ||
| 13 | 15 | ||
| 14 | enum custom_keycodes { | 16 | enum custom_keycodes { |
| 15 | QWERTY = SAFE_RANGE, | 17 | DVORAK = SAFE_RANGE, |
| 18 | QWERTY, | ||
| 16 | COLEMAK, | 19 | COLEMAK, |
| 17 | DVORAK, | 20 | WOW, |
| 18 | LOWER, | 21 | LOWER, |
| 19 | RAISE, | 22 | RAISE, |
| 20 | ADJUST, | 23 | ADJUST |
| 21 | }; | 24 | }; |
| 22 | 25 | ||
| 23 | #define KC_____ KC_TRNS | 26 | #define KC_____ KC_TRNS |
| @@ -28,10 +31,23 @@ enum custom_keycodes { | |||
| 28 | #define KC_QWRT QWERTY | 31 | #define KC_QWRT QWERTY |
| 29 | #define KC_CLMK COLEMAK | 32 | #define KC_CLMK COLEMAK |
| 30 | #define KC_DVRK DVORAK | 33 | #define KC_DVRK DVORAK |
| 34 | #define KC_WOW WOW | ||
| 31 | #define KC_BSLT ALT_T(KC_BSPC) | 35 | #define KC_BSLT ALT_T(KC_BSPC) |
| 36 | #define ADJUST MO(_ADJUST) | ||
| 37 | #define LOWER MO(_LOWER) | ||
| 38 | #define RAISE MO(_RAISE) | ||
| 32 | 39 | ||
| 33 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 40 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 34 | 41 | ||
| 42 | |||
| 43 | [_DVORAK] = LAYOUT_kc ( | ||
| 44 | GRV , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,BSLS, | ||
| 45 | TAB ,QUOT,COMM,DOT , P , Y , F , G , C , R , L ,SLSH, | ||
| 46 | ESC , A , O , E , U , I , D , H , T , N , S ,MINS, | ||
| 47 | LSFT,SCLN, Q , J , K , X ,LOWR, RASE, B , M , W , V , Z ,RSFT, | ||
| 48 | LCTL,BSLT,LGUI, ENT ,SPC ,LALT | ||
| 49 | ), | ||
| 50 | |||
| 35 | [_QWERTY] = LAYOUT_kc ( | 51 | [_QWERTY] = LAYOUT_kc ( |
| 36 | EQL , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,MINS, | 52 | EQL , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,MINS, |
| 37 | TAB , Q , W , E , R , T , Y , U , I , O , P ,BSLS, | 53 | TAB , Q , W , E , R , T , Y , U , I , O , P ,BSLS, |
| @@ -48,12 +64,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 48 | LCTL,BSPC,LGUI, ENT ,SPC ,LALT | 64 | LCTL,BSPC,LGUI, ENT ,SPC ,LALT |
| 49 | ), | 65 | ), |
| 50 | 66 | ||
| 51 | [_DVORAK] = LAYOUT_kc ( | 67 | [_WOW] = LAYOUT_kc ( |
| 52 | GRV , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,BSLS, | 68 | GRV , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,BSLS, |
| 53 | TAB ,QUOT,COMM,DOT , P , Y , F , G , C , R , L ,SLSH, | 69 | TAB ,QUOT,COMM,DOT , P , Y , F , G , C , R , L ,SLSH, |
| 54 | ESC , A , O , E , U , I , D , H , T , N , S ,MINS, | 70 | ESC , A , O , E , U , I , D , H , T , N , S ,MINS, |
| 55 | LSFT,SCLN, Q , J , K , X ,LOWR, RASE, B , M , W , V , Z ,RSFT, | 71 | LSFT,SCLN, Q , J , K , X ,LALT, RGUI, B , M , W , V , Z ,RSFT, |
| 56 | LCTL,BSLT,LGUI, ENT ,SPC ,LALT | 72 | LOWR,BSPC,LCTL, ENT ,SPC ,RASE |
| 57 | ), | 73 | ), |
| 58 | 74 | ||
| 59 | [_LOWER] = LAYOUT_kc ( | 75 | [_LOWER] = LAYOUT_kc ( |
| @@ -75,7 +91,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 75 | [_ADJUST] = LAYOUT_kc ( | 91 | [_ADJUST] = LAYOUT_kc ( |
| 76 | F11 , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F12 , | 92 | F11 , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F12 , |
| 77 | ____,RST ,____,____,____,____, ____,____,____,____,____,____, | 93 | ____,RST ,____,____,____,____, ____,____,____,____,____,____, |
| 78 | ____,____,____,____,____,____, ____,QWRT,CLMK,DVRK,____,____, | 94 | ____,____,____,____,____,____, ____,QWRT,CLMK,DVRK,WOW ,____, |
| 79 | ____,____,____,____,____,____,____, ____,____,____,____,____,____,____, | 95 | ____,____,____,____,____,____,____, ____,____,____,____,____,____,____, |
| 80 | ____,____,____, ____,____,____ | 96 | ____,____,____, ____,____,____ |
| 81 | ) | 97 | ) |
| @@ -86,76 +102,39 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 86 | float tone_qwerty[][2] = SONG(QWERTY_SOUND); | 102 | float tone_qwerty[][2] = SONG(QWERTY_SOUND); |
| 87 | #endif | 103 | #endif |
| 88 | 104 | ||
| 89 | void persistent_default_layer_set(uint16_t default_layer) { | ||
| 90 | eeconfig_update_default_layer(default_layer); | ||
| 91 | default_layer_set(default_layer); | ||
| 92 | } | ||
| 93 | |||
| 94 | void matrix_init_user(void) { | 105 | void matrix_init_user(void) { |
| 95 | // This will disable the red LEDs on the ProMicros | 106 | // This will disable the red LEDs on the ProMicros |
| 96 | DDRD &= ~(1<<5); | 107 | setPinOutput(D5); |
| 97 | PORTD &= ~(1<<5); | 108 | writePinLow(D5); |
| 98 | DDRB &= ~(1<<0); | 109 | setPinOutput(B0); |
| 99 | PORTB &= ~(1<<0); | 110 | writePinLow(B0); |
| 100 | }; | 111 | }; |
| 101 | 112 | ||
| 113 | layer_state_t layer_state_set_user(layer_state_t state) { | ||
| 114 | return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); | ||
| 115 | } | ||
| 102 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 116 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 103 | switch (keycode) { | 117 | switch (keycode) { |
| 104 | case QWERTY: | ||
| 105 | if (record->event.pressed) { | ||
| 106 | #ifdef AUDIO_ENABLE | ||
| 107 | PLAY_SONG(tone_qwerty); | ||
| 108 | #endif | ||
| 109 | persistent_default_layer_set(1UL<<_QWERTY); | ||
| 110 | } | ||
| 111 | return false; | ||
| 112 | break; | ||
| 113 | case COLEMAK: | ||
| 114 | if (record->event.pressed) { | ||
| 115 | #ifdef AUDIO_ENABLE | ||
| 116 | PLAY_SONG(tone_colemak); | ||
| 117 | #endif | ||
| 118 | persistent_default_layer_set(1UL<<_COLEMAK); | ||
| 119 | } | ||
| 120 | return false; | ||
| 121 | break; | ||
| 122 | case DVORAK: | 118 | case DVORAK: |
| 123 | if (record->event.pressed) { | 119 | if (record->event.pressed) { |
| 124 | #ifdef AUDIO_ENABLE | 120 | set_single_persistent_default_layer(_DVORAK); |
| 125 | PLAY_SONG(tone_dvorak); | ||
| 126 | #endif | ||
| 127 | persistent_default_layer_set(1UL<<_DVORAK); | ||
| 128 | } | 121 | } |
| 129 | return false; | 122 | return false; |
| 130 | break; | 123 | case COLEMAK: |
| 131 | case LOWER: | ||
| 132 | if (record->event.pressed) { | 124 | if (record->event.pressed) { |
| 133 | layer_on(_LOWER); | 125 | set_single_persistent_default_layer(_COLEMAK); |
| 134 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 135 | } else { | ||
| 136 | layer_off(_LOWER); | ||
| 137 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 138 | } | 126 | } |
| 139 | return false; | 127 | return false; |
| 140 | break; | 128 | case QWERTY: |
| 141 | case RAISE: | ||
| 142 | if (record->event.pressed) { | 129 | if (record->event.pressed) { |
| 143 | layer_on(_RAISE); | 130 | set_single_persistent_default_layer(_QWERTY); |
| 144 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 145 | } else { | ||
| 146 | layer_off(_RAISE); | ||
| 147 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 148 | } | 131 | } |
| 149 | return false; | 132 | return false; |
| 150 | break; | 133 | case WOW: |
| 151 | case ADJUST: | ||
| 152 | if (record->event.pressed) { | 134 | if (record->event.pressed) { |
| 153 | layer_on(_ADJUST); | 135 | set_single_persistent_default_layer(_WOW); |
| 154 | } else { | ||
| 155 | layer_off(_ADJUST); | ||
| 156 | } | 136 | } |
| 157 | return false; | 137 | return false; |
| 158 | break; | ||
| 159 | } | 138 | } |
| 160 | return true; | 139 | return true; |
| 161 | } | 140 | } \ No newline at end of file |
diff --git a/keyboards/kinesis/keymaps/xyverz/keymap.c b/keyboards/kinesis/keymaps/xyverz/keymap.c index 842645d90..1144d7924 100644 --- a/keyboards/kinesis/keymaps/xyverz/keymap.c +++ b/keyboards/kinesis/keymaps/xyverz/keymap.c | |||
| @@ -1,26 +1,20 @@ | |||
| 1 | #include QMK_KEYBOARD_H | 1 | #include QMK_KEYBOARD_H |
| 2 | 2 | ||
| 3 | extern keymap_config_t keymap_config; | 3 | enum layer_names { |
| 4 | 4 | _DVORAK, | |
| 5 | #define _DVORAK 0 // Dvorak layer | 5 | _QWERTY, |
| 6 | #define _QWERTY 1 // Qwerty layer | 6 | _COLEMAK, |
| 7 | #define _COLEMAK 2 // Colemak layer | 7 | _KEYPAD, |
| 8 | #define _MEDIA 3 // Media Layer | ||
| 9 | #define _KEYPAD 4 // Keypad Layer | ||
| 10 | |||
| 11 | enum custom_keycodes { | ||
| 12 | DVORAK = SAFE_RANGE, | ||
| 13 | QWERTY, | ||
| 14 | COLEMAK, | ||
| 15 | MEDIA, | ||
| 16 | KEYPAD | ||
| 17 | }; | 8 | }; |
| 18 | 9 | ||
| 10 | enum custom_keycodes { DVORAK = SAFE_RANGE, QWERTY, COLEMAK, KEYPAD }; | ||
| 11 | |||
| 19 | // Aliases to make the keymap more uniform | 12 | // Aliases to make the keymap more uniform |
| 20 | #define GUI_END GUI_T(KC_END) | 13 | #define GUI_END GUI_T(KC_END) |
| 21 | #define MED_DEL LT(_MEDIA, KC_DEL) | ||
| 22 | #define KPD_ENT LT(_KEYPAD, KC_ENT) | 14 | #define KPD_ENT LT(_KEYPAD, KC_ENT) |
| 23 | 15 | ||
| 16 | // clang-format off | ||
| 17 | |||
| 24 | /* | 18 | /* |
| 25 | 19 | ||
| 26 | Function Keys on All Layers (Keypad toggles): | 20 | Function Keys on All Layers (Keypad toggles): |
| @@ -46,9 +40,9 @@ enum custom_keycodes { | |||
| 46 | ,--------------.,--------------. | 40 | ,--------------.,--------------. |
| 47 | | LCtl | LAlt || RGUI | RCtl | | 41 | | LCtl | LAlt || RGUI | RCtl | |
| 48 | ,------|-------|------||------+-------+-------. | 42 | ,------|-------|------||------+-------+-------. |
| 49 | | | Del | Home || PgUp | Enter | | | 43 | | | | Home || PgUp | Enter | | |
| 50 | | BkSp | / |------||------| / | Space | | 44 | | BkSp | Del |------||------| / | Space | |
| 51 | | | Media | End || PgDn | KeyPd | | | 45 | | | | End || PgDn | KeyPd | | |
| 52 | `---------------------'`----------------------' | 46 | `---------------------'`----------------------' |
| 53 | 47 | ||
| 54 | QWERTY layer: | 48 | QWERTY layer: |
| @@ -66,9 +60,9 @@ enum custom_keycodes { | |||
| 66 | ,--------------.,--------------. | 60 | ,--------------.,--------------. |
| 67 | | LCtl | LAlt || RGUI | RCtl | | 61 | | LCtl | LAlt || RGUI | RCtl | |
| 68 | ,------|-------|------||------+-------+-------. | 62 | ,------|-------|------||------+-------+-------. |
| 69 | | | Del | Home || PgUp | Enter | | | 63 | | | | Home || PgUp | Enter | | |
| 70 | | BkSp | / |------||------| / | Space | | 64 | | BkSp | Del |------||------| / | Space | |
| 71 | | | Media | End || PgDn | KeyPd | | | 65 | | | | End || PgDn | KeyPd | | |
| 72 | `---------------------'`----------------------' | 66 | `---------------------'`----------------------' |
| 73 | 67 | ||
| 74 | Colemak layer: | 68 | Colemak layer: |
| @@ -86,31 +80,11 @@ enum custom_keycodes { | |||
| 86 | ,--------------.,--------------. | 80 | ,--------------.,--------------. |
| 87 | | LCtl | LAlt || RGUI | RCtl | | 81 | | LCtl | LAlt || RGUI | RCtl | |
| 88 | ,------|-------|------||------+-------+-------. | 82 | ,------|-------|------||------+-------+-------. |
| 89 | | | Del | Home || PgUp | Enter | | | 83 | | | | Home || PgUp | Enter | | |
| 90 | | BkSp | / |------||------| / | Space | | 84 | | BkSp | Del |------||------| / | Space | |
| 91 | | | Media | End || PgDn | KeyPd | | | 85 | | | | End || PgDn | KeyPd | | |
| 92 | `---------------------'`----------------------' | 86 | `---------------------'`----------------------' |
| 93 | 87 | ||
| 94 | Media layer: | ||
| 95 | ,-------------------------------------------.,-------------------------------------------. | ||
| 96 | | F11 | F1 | F2 | F3 | F4 | F5 || F6 | F7 | F8 | F9 | F10 | F12 | | ||
| 97 | |--------+------+------+------+------+------||------+------+------+------+------+--------| | ||
| 98 | | | | | | | || | | | | | | | ||
| 99 | |--------+------+------+------+------+------||------+------+------+------+------+--------| | ||
| 100 | | | | Mute | Vol- | Vol+ | || | | | | | | | ||
| 101 | |--------+------+------+------+------+------||------+------+------+------+------+--------| | ||
| 102 | | | Stop | Prev | Play | Next | Sel || | | | | | | | ||
| 103 | `--------+------+------+------+------+------'`------+------+------+------+------+--------' | ||
| 104 | | | | | | | | | | | | ||
| 105 | `---------------------------' `---------------------------' | ||
| 106 | ,-------------.,-------------. | ||
| 107 | | | || | | | ||
| 108 | ,------|------|------||------+------+------. | ||
| 109 | | | | || | | | | ||
| 110 | | | |------||------| | | | ||
| 111 | | | | || | | | | ||
| 112 | `--------------------'`--------------------' | ||
| 113 | |||
| 114 | Keypad layer: | 88 | Keypad layer: |
| 115 | ,-------------------------------------------.,-------------------------------------------. | 89 | ,-------------------------------------------.,-------------------------------------------. |
| 116 | | Power | | | | | || | NmLk | KP = | KP / | KP * | | | 90 | | Power | | | | | || | NmLk | KP = | KP / | KP * | | |
| @@ -145,7 +119,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 145 | // Left Thumb | 119 | // Left Thumb |
| 146 | KC_LCTL, KC_LALT, | 120 | KC_LCTL, KC_LALT, |
| 147 | KC_HOME, | 121 | KC_HOME, |
| 148 | KC_BSPC, MED_DEL, GUI_END, | 122 | KC_BSPC, KC_DEL, GUI_END, |
| 149 | 123 | ||
| 150 | // Right Hand | 124 | // Right Hand |
| 151 | KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_KEYPAD), RESET, | 125 | KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_KEYPAD), RESET, |
| @@ -171,12 +145,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 171 | // Left Thumb | 145 | // Left Thumb |
| 172 | KC_LCTL, KC_LALT, | 146 | KC_LCTL, KC_LALT, |
| 173 | KC_HOME, | 147 | KC_HOME, |
| 174 | KC_BSPC, MED_DEL, KC_END, | 148 | KC_BSPC, KC_DEL, KC_END, |
| 175 | 149 | ||
| 176 | // Right Hand | 150 | // Right Hand |
| 177 | KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_KEYPAD), RESET, | 151 | KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_KEYPAD), RESET, |
| 178 | KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, | 152 | KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, |
| 179 | KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL , | 153 | KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS , |
| 180 | KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, | 154 | KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, |
| 181 | KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, | 155 | KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, |
| 182 | KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, | 156 | KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, |
| @@ -197,12 +171,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 197 | // Left Thumb | 171 | // Left Thumb |
| 198 | KC_LCTL, KC_LALT, | 172 | KC_LCTL, KC_LALT, |
| 199 | KC_HOME, | 173 | KC_HOME, |
| 200 | KC_BSPC, MED_DEL, KC_END, | 174 | KC_BSPC, KC_DEL, KC_END, |
| 201 | 175 | ||
| 202 | // Right Hand | 176 | // Right Hand |
| 203 | KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_KEYPAD), RESET, | 177 | KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_KEYPAD), RESET, |
| 204 | KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, | 178 | KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, |
| 205 | KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL, | 179 | KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS, |
| 206 | KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, | 180 | KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, |
| 207 | KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, | 181 | KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, |
| 208 | KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, | 182 | KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, |
| @@ -212,32 +186,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 212 | KC_PGDN, KPD_ENT, KC_SPC | 186 | KC_PGDN, KPD_ENT, KC_SPC |
| 213 | ), | 187 | ), |
| 214 | 188 | ||
| 215 | [_MEDIA] = LAYOUT ( | ||
| 216 | // Left Hand | ||
| 217 | _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
| 218 | KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, | ||
| 219 | _______, _______, _______, _______, _______, _______, | ||
| 220 | _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, | ||
| 221 | _______, KC_MSTP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSEL, | ||
| 222 | _______, _______, _______, _______, | ||
| 223 | // Left Thumb | ||
| 224 | _______, _______, | ||
| 225 | _______, | ||
| 226 | _______, _______, _______, | ||
| 227 | |||
| 228 | // Right Hand | ||
| 229 | _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
| 230 | KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12, | ||
| 231 | _______, _______, _______, _______, _______, _______, | ||
| 232 | _______, _______, _______, _______, _______, _______, | ||
| 233 | _______, _______, _______, _______, _______, _______, | ||
| 234 | _______, _______, _______, _______, | ||
| 235 | // Right Thumb | ||
| 236 | _______, _______, | ||
| 237 | _______, | ||
| 238 | _______, _______, _______ | ||
| 239 | ), | ||
| 240 | |||
| 241 | [_KEYPAD] = LAYOUT ( | 189 | [_KEYPAD] = LAYOUT ( |
| 242 | // Left Hand | 190 | // Left Hand |
| 243 | _______, _______, _______, _______, _______, _______, _______, _______, _______, | 191 | _______, _______, _______, _______, _______, _______, _______, _______, _______, |
| @@ -251,7 +199,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 251 | _______, | 199 | _______, |
| 252 | _______, _______, _______, | 200 | _______, _______, _______, |
| 253 | 201 | ||
| 254 | // Right Hand */ | 202 | // Right Hand |
| 255 | _______, _______, _______, _______, _______, _______, _______, _______, _______, | 203 | _______, _______, _______, _______, _______, _______, _______, _______, _______, |
| 256 | _______, KC_NLCK, KC_PEQL, KC_PSLS, KC_PAST, _______, | 204 | _______, KC_NLCK, KC_PEQL, KC_PSLS, KC_PAST, _______, |
| 257 | _______, KC_P7, KC_P8, KC_P9, KC_PMNS, _______, | 205 | _______, KC_P7, KC_P8, KC_P9, KC_PMNS, _______, |
| @@ -263,38 +211,26 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 263 | _______, | 211 | _______, |
| 264 | _______, _______, KC_P0 | 212 | _______, _______, KC_P0 |
| 265 | ) | 213 | ) |
| 266 | |||
| 267 | }; | 214 | }; |
| 268 | 215 | ||
| 269 | void persistent_default_layer_set(uint16_t default_layer) { | 216 | // clang-format on |
| 270 | eeconfig_update_default_layer(default_layer); | ||
| 271 | default_layer_set(default_layer); | ||
| 272 | } | ||
| 273 | 217 | ||
| 274 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 218 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 275 | switch (keycode) { | 219 | if (record->event.pressed) { |
| 276 | case DVORAK: | 220 | switch (keycode) { |
| 277 | if (record->event.pressed) { | 221 | case DVORAK: |
| 278 | persistent_default_layer_set(1UL<<_DVORAK); | 222 | set_single_persistent_default_layer(_DVORAK); |
| 279 | } | 223 | return false; |
| 280 | return false; | 224 | case QWERTY: |
| 281 | break; | 225 | set_single_persistent_default_layer(_QWERTY); |
| 282 | case QWERTY: | 226 | return false; |
| 283 | if (record->event.pressed) { | 227 | case COLEMAK: |
| 284 | persistent_default_layer_set(1UL<<_QWERTY); | 228 | set_single_persistent_default_layer(_COLEMAK); |
| 285 | } | 229 | return false; |
| 286 | return false; | 230 | } |
| 287 | break; | 231 | } |
| 288 | case COLEMAK: | ||
| 289 | if (record->event.pressed) { | ||
| 290 | persistent_default_layer_set(1UL<<_COLEMAK); | ||
| 291 | } | ||
| 292 | return false; | ||
| 293 | break; | ||
| 294 | } | ||
| 295 | return true; | 232 | return true; |
| 296 | }; | 233 | }; |
| 297 | 234 | ||
| 298 | // Runs just one time when the keyboard initializes. | 235 | // Runs just one time when the keyboard initializes. |
| 299 | void matrix_init_user(void) { | 236 | void matrix_init_user(void){}; |
| 300 | }; | ||
diff --git a/keyboards/kinesis/keymaps/xyverz/readme.md b/keyboards/kinesis/keymaps/xyverz/readme.md index b55100d25..f8896934c 100644 --- a/keyboards/kinesis/keymaps/xyverz/readme.md +++ b/keyboards/kinesis/keymaps/xyverz/readme.md | |||
| @@ -10,6 +10,8 @@ I've enabled persistent keymaps for Qwerty, Dvorak and Colemak layers, similar t | |||
| 10 | 10 | ||
| 11 | Depending on the OS, most of the LEDs are now working in this keymap, but I still have yet to get the Num Pad LED working when switching to the Numpad layer. | 11 | Depending on the OS, most of the LEDs are now working in this keymap, but I still have yet to get the Num Pad LED working when switching to the Numpad layer. |
| 12 | 12 | ||
| 13 | Removed the Media layer 2018-12-07 | ||
| 14 | |||
| 13 | ## Still to do: | 15 | ## Still to do: |
| 14 | 16 | ||
| 15 | * Figure out how to make the Numpad LED work properly. | 17 | * Figure out how to make the Numpad LED work properly. |
| @@ -38,9 +40,9 @@ Depending on the OS, most of the LEDs are now working in this keymap, but I stil | |||
| 38 | ,--------------.,--------------. | 40 | ,--------------.,--------------. |
| 39 | | LCtl | LAlt || RGUI | RCtl | | 41 | | LCtl | LAlt || RGUI | RCtl | |
| 40 | ,------|-------|------||------+-------+-------. | 42 | ,------|-------|------||------+-------+-------. |
| 41 | | | Del | Home || PgUp | Enter | | | 43 | | | | Home || PgUp | Enter | | |
| 42 | | BkSp | / |------||------| / | Space | | 44 | | BkSp | Del |------||------| / | Space | |
| 43 | | | Media | End || PgDn | KeyPd | | | 45 | | | | End || PgDn | KeyPd | | |
| 44 | `---------------------'`----------------------' | 46 | `---------------------'`----------------------' |
| 45 | 47 | ||
| 46 | ### Layer 1: QWERTY layer | 48 | ### Layer 1: QWERTY layer |
| @@ -59,9 +61,9 @@ Depending on the OS, most of the LEDs are now working in this keymap, but I stil | |||
| 59 | ,--------------.,--------------. | 61 | ,--------------.,--------------. |
| 60 | | LCtl | LAlt || RGUI | RCtl | | 62 | | LCtl | LAlt || RGUI | RCtl | |
| 61 | ,------|-------|------||------+-------+-------. | 63 | ,------|-------|------||------+-------+-------. |
| 62 | | | Del | Home || PgUp | Enter | | | 64 | | | | Home || PgUp | Enter | | |
| 63 | | BkSp | / |------||------| / | Space | | 65 | | BkSp | Del |------||------| / | Space | |
| 64 | | | Media | End || PgDn | KeyPd | | | 66 | | | | End || PgDn | KeyPd | | |
| 65 | `---------------------'`----------------------' | 67 | `---------------------'`----------------------' |
| 66 | 68 | ||
| 67 | ### Keymap 2: Colemak layer | 69 | ### Keymap 2: Colemak layer |
| @@ -80,35 +82,12 @@ Depending on the OS, most of the LEDs are now working in this keymap, but I stil | |||
| 80 | ,--------------.,--------------. | 82 | ,--------------.,--------------. |
| 81 | | LCtl | LAlt || RGUI | RCtl | | 83 | | LCtl | LAlt || RGUI | RCtl | |
| 82 | ,------|-------|------||------+-------+-------. | 84 | ,------|-------|------||------+-------+-------. |
| 83 | | | Del | Home || PgUp | Enter | | | 85 | | | | Home || PgUp | Enter | | |
| 84 | | BkSp | / |------||------| / | Space | | 86 | | BkSp | Del |------||------| / | Space | |
| 85 | | | Media | End || PgDn | KeyPd | | | 87 | | | | End || PgDn | KeyPd | | |
| 86 | `---------------------'`----------------------' | 88 | `---------------------'`----------------------' |
| 87 | 89 | ||
| 88 | ### layer 3 : Media layer | 90 | ### layer 3 : Keypad layer |
| 89 | |||
| 90 | ,-------------------------------------------.,-------------------------------------------. | ||
| 91 | | F11 | F1 | F2 | F3 | F4 | F5 || F6 | F7 | F8 | F9 | F10 | F12 | | ||
| 92 | |--------+------+------+------+------+------||------+------+------+------+------+--------| | ||
| 93 | | | | | | | || | | | | | | | ||
| 94 | |--------+------+------+------+------+------||------+------+------+------+------+--------| | ||
| 95 | | | | Mute | Vol- | Vol+ | || | | | | | | | ||
| 96 | |--------+------+------+------+------+------||------+------+------+------+------+--------| | ||
| 97 | | | Stop | Prev | Play | Next | Sel || | | | | | | | ||
| 98 | `--------+------+------+------+------+------'`------+------+------+------+------+--------' | ||
| 99 | | | | | | | | | | | | ||
| 100 | `---------------------------' `---------------------------' | ||
| 101 | ,-------------.,-------------. | ||
| 102 | | | || | | | ||
| 103 | ,------|------|------||------+------+------. | ||
| 104 | | | | || | | | | ||
| 105 | | | |------||------| | | | ||
| 106 | | | | || | | | | ||
| 107 | `--------------------'`--------------------' | ||
| 108 | |||
| 109 | |||
| 110 | |||
| 111 | ### Keymap 4: Keypad layer | ||
| 112 | 91 | ||
| 113 | ,-------------------------------------------.,-------------------------------------------. | 92 | ,-------------------------------------------.,-------------------------------------------. |
| 114 | | Power | | | | | || | NmLk | KP = | KP / | KP * | | | 93 | | Power | | | | | || | NmLk | KP = | KP / | KP * | | |
diff --git a/keyboards/minidox/keymaps/xyverz/keymap.c b/keyboards/minidox/keymaps/xyverz/keymap.c index 4863f4f92..994ee4e1b 100644 --- a/keyboards/minidox/keymaps/xyverz/keymap.c +++ b/keyboards/minidox/keymaps/xyverz/keymap.c | |||
| @@ -1,44 +1,28 @@ | |||
| 1 | #include QMK_KEYBOARD_H | 1 | #include QMK_KEYBOARD_H |
| 2 | 2 | ||
| 3 | extern keymap_config_t keymap_config; | 3 | enum layer_names { _QWERTY, _COLEMAK, _DVORAK, _LOWER, _RAISE, _ADJUST }; |
| 4 | 4 | ||
| 5 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | 5 | enum custom_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK, LOWER, RAISE, ADJUST }; |
| 6 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||
| 7 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||
| 8 | // entirely and just use numbers. | ||
| 9 | #define _DVORAK 0 | ||
| 10 | #define _QWERTY 1 | ||
| 11 | #define _COLEMAK 2 | ||
| 12 | #define _LOWER 3 | ||
| 13 | #define _RAISE 4 | ||
| 14 | #define _ADJUST 16 | ||
| 15 | |||
| 16 | enum planck_keycodes { | ||
| 17 | DVORAK = SAFE_RANGE, | ||
| 18 | QWERTY, | ||
| 19 | COLEMAK, | ||
| 20 | LOWER, | ||
| 21 | RAISE, | ||
| 22 | BACKLIT | ||
| 23 | }; | ||
| 24 | 6 | ||
| 25 | // Adding macros to make the keymaps below much easier to read. | 7 | // Adding macros to make the keymaps below much easier to read. |
| 26 | #define SFTSCLN SFT_T(KC_SCLN) | 8 | /* |
| 27 | #define SFTSLSH SFT_T(KC_SLSH) | 9 | Visit https://github.com/qmk/qmk_firmware/blob/master/docs/feature_advanced_keycodes.md#mod-tap |
| 28 | #define SFTZED SFT_T(KC_Z) | 10 | to read why these macros below are side-aware (LALT, RCTL, etc). |
| 29 | //#define ALTENT ALT_T(KC_ENT) | 11 | */ |
| 30 | //#define ESCTRL CTL_T(KC_ESC) | 12 | #define CTLSCLN RCTL_T(KC_SCLN) |
| 31 | //#define TABGUI GUI_T(KC_TAB) | 13 | #define CTLSLSH LCTL_T(KC_SLSH) |
| 32 | #define CTRLQ CTL_T(KC_Q) | 14 | #define RCTLZED RCTL_T(KC_Z) |
| 33 | #define CTRLV CTL_T(KC_V) | 15 | #define LCTLZED LCTL_T(KC_Z) |
| 34 | #define ALTJ ALT_T(KC_J) | 16 | #define ALTDOT RALT_T(KC_DOT) |
| 35 | #define ALTW ALT_T(KC_W) | 17 | #define ALTX LALT_T(KC_X) |
| 36 | #define CTRLX CTL_T(KC_X) | 18 | #define ALTQ LALT_T(KC_Q) |
| 37 | #define CTRLDOT CTL_T(KC_DOT) | 19 | #define ALTV RALT_T(KC_V) |
| 38 | #define ALTC ALT_T(KC_C) | 20 | #define GUICOMM RGUI_T(KC_COMM) |
| 39 | #define ALTCOMM ALT_T(KC_COMM) | 21 | #define GUIJ LGUI_T(KC_J) |
| 40 | //#define GUIBSPC GUI_T(KC_BSPC) | 22 | #define GUIC LGUI_T(KC_C) |
| 23 | #define GUIW RGUI_T(KC_W) | ||
| 41 | 24 | ||
| 25 | // clang-format off | ||
| 42 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 26 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 43 | 27 | ||
| 44 | /* Dvorak | 28 | /* Dvorak |
| @@ -48,19 +32,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 48 | * |------+------+------+------+------| |------+------+------+------+------| | 32 | * |------+------+------+------+------| |------+------+------+------+------| |
| 49 | * | A | O | E | U | I | | D | H | T | N | S | | 33 | * | A | O | E | U | I | | D | H | T | N | S | |
| 50 | * |------+------+------+------+------| |------+------+------+------+------| | 34 | * |------+------+------+------+------| |------+------+------+------+------| |
| 51 | * |SFT/ ;|CTL/ Q|ALT/ J| K | X | | B | M |ALT/ W|CTL/ V|SFT/ Z| | 35 | * |CTL/ ;|ALT/ Q|GUI/ J| K | X | | B | M |GUI/ W|ALT/ V|CTL/ Z| |
| 52 | * `----------------------------------' `----------------------------------' | 36 | * `----------------------------------' `----------------------------------' |
| 53 | * ,--------------------. ,------,-------------. | 37 | * ,--------------------. ,------,-------------. |
| 54 | * | LOWER| Gui | | | | Ent |RAISE | | 38 | * | LOWER| BSPC | | | | Spc |RAISE | |
| 55 | * `-------------| BSpc | | Spc |------+------. | 39 | * `-------------| SHFT | | Ent |------+------. |
| 56 | * | | | | | 40 | * | | | | |
| 57 | * `------' `------' | 41 | * `------' `------' |
| 58 | */ | 42 | */ |
| 59 | [_DVORAK] = LAYOUT ( \ | 43 | [_DVORAK] = LAYOUT ( \ |
| 60 | KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, \ | 44 | KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, \ |
| 61 | KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, \ | 45 | KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, \ |
| 62 | SFTSCLN, CTRLQ, ALTJ, KC_K, KC_X, KC_B, KC_M, ALTW, CTRLV, SFTZED, \ | 46 | CTLSCLN, ALTQ, GUIJ, KC_K, KC_X, KC_B, KC_M, GUIW, ALTV, RCTLZED, \ |
| 63 | LOWER, KC_LGUI, KC_BSPC, KC_SPC, KC_ENT, RAISE \ | 47 | LOWER, KC_BSPC, KC_LSFT, KC_ENT, KC_SPC, RAISE \ |
| 64 | ), | 48 | ), |
| 65 | 49 | ||
| 66 | /* Qwerty | 50 | /* Qwerty |
| @@ -70,19 +54,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 70 | * |------+------+------+------+------| |------+------+------+------+------| | 54 | * |------+------+------+------+------| |------+------+------+------+------| |
| 71 | * | A | S | D | F | G | | H | J | K | L | ; | | 55 | * | A | S | D | F | G | | H | J | K | L | ; | |
| 72 | * |------+------+------+------+------| |------+------+------+------+------| | 56 | * |------+------+------+------+------| |------+------+------+------+------| |
| 73 | * |SFT/ Z|CTL/ X|ALT/ C| V | B | | N | M |ALT/ ,|CTL/ .|SFT/ /| | 57 | * |CTL/ Z|ALT/ X|GUI/ C| V | B | | N | M |GUI/ ,|ALT/ .|CTL/ /| |
| 74 | * `----------------------------------' `----------------------------------' | 58 | * `----------------------------------' `----------------------------------' |
| 75 | * ,--------------------. ,------,-------------. | 59 | * ,--------------------. ,------,-------------. |
| 76 | * | LOWER| Gui | | | | Ent |RAISE | | 60 | * | LOWER| BSPC | | | | Spc |RAISE | |
| 77 | * `-------------| BSpc | | Spc |------+------. | 61 | * `-------------| SHFT | | Ent |------+------. |
| 78 | * | | | | | 62 | * | | | | |
| 79 | * `------' `------' | 63 | * `------' `------' |
| 80 | */ | 64 | */ |
| 81 | [_QWERTY] = LAYOUT ( \ | 65 | [_QWERTY] = LAYOUT ( \ |
| 82 | KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, \ | 66 | KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, \ |
| 83 | KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, \ | 67 | KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, \ |
| 84 | SFTZED, CTRLX, ALTC, KC_V, KC_B, KC_N, KC_M, ALTCOMM, CTRLDOT, SFTSLSH, \ | 68 | LCTLZED, ALTX, GUIC, KC_V, KC_B, KC_N, KC_M, GUICOMM, ALTDOT, CTLSLSH, \ |
| 85 | LOWER, KC_LGUI, KC_BSPC, KC_SPC, KC_ENT, RAISE \ | 69 | LOWER, KC_BSPC, KC_LSFT, KC_ENT, KC_SPC, RAISE \ |
| 86 | ), | 70 | ), |
| 87 | 71 | ||
| 88 | /* Colemak | 72 | /* Colemak |
| @@ -92,19 +76,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 92 | * |------+------+------+------+------| |------+------+------+------+------| | 76 | * |------+------+------+------+------| |------+------+------+------+------| |
| 93 | * | A | R | S | T | D | | H | N | E | I | S | | 77 | * | A | R | S | T | D | | H | N | E | I | S | |
| 94 | * |------+------+------+------+------| |------+------+------+------+------| | 78 | * |------+------+------+------+------| |------+------+------+------+------| |
| 95 | * |SFT/ Z|CTL/ X|ALT/ C| V | B | | K | M |ALT/ ,|CTL/ .|SFT/ /| | 79 | * |CTL/ Z|ALT/ X|GUI/ C| V | B | | K | M |GUI/ ,|ALT/ .|CTL/ /| |
| 96 | * `----------------------------------' `----------------------------------' | 80 | * `----------------------------------' `----------------------------------' |
| 97 | * ,--------------------. ,------,-------------. | 81 | * ,--------------------. ,------,-------------. |
| 98 | * | LOWER| Gui | | | | Ent |RAISE | | 82 | * | LOWER| BSPC | | | | Spc |RAISE | |
| 99 | * `-------------| BSpc | | Spc |------+------. | 83 | * `-------------| SHFT | | Ent |------+------. |
| 100 | * | | | | | 84 | * | | | | |
| 101 | * `------' `------' | 85 | * `------' `------' |
| 102 | */ | 86 | */ |
| 103 | [_COLEMAK] = LAYOUT ( \ | 87 | [_COLEMAK] = LAYOUT ( \ |
| 104 | KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, \ | 88 | KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, \ |
| 105 | KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, \ | 89 | KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, \ |
| 106 | SFTZED, CTRLX, ALTC, KC_V, KC_B, KC_K, KC_M, ALTCOMM, CTRLDOT, SFTSLSH, \ | 90 | LCTLZED, ALTX, GUIC, KC_V, KC_B, KC_K, KC_M, GUICOMM, ALTDOT, CTLSLSH, \ |
| 107 | LOWER, KC_LGUI, KC_BSPC, KC_SPC, KC_ENT, RAISE \ | 91 | LOWER, KC_BSPC, KC_LSFT, KC_ENT, KC_SPC, RAISE \ |
| 108 | ), | 92 | ), |
| 109 | 93 | ||
| 110 | /* Lower | 94 | /* Lower |
| @@ -168,65 +152,44 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 168 | */ | 152 | */ |
| 169 | [_ADJUST] = LAYOUT ( \ | 153 | [_ADJUST] = LAYOUT ( \ |
| 170 | KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_UP, KC_F9, KC_F10, \ | 154 | KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_UP, KC_F9, KC_F10, \ |
| 171 | KC_F11, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_F12, \ | 155 | KC_F11, RESET, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_F12, \ |
| 172 | _______, QWERTY, COLEMAK, DVORAK, _______, RESET, _______, _______, _______, _______, \ | 156 | _______, QWERTY, COLEMAK, DVORAK, _______, RESET, _______, _______, _______, _______, \ |
| 173 | _______, _______, _______, _______, _______, _______ \ | 157 | _______, _______, _______, _______, _______, _______ \ |
| 174 | ) | 158 | ) |
| 175 | }; | 159 | }; |
| 160 | // clang-format on | ||
| 176 | 161 | ||
| 177 | void persistent_default_layer_set(uint16_t default_layer) { | 162 | #ifdef AUDIO_ENABLE |
| 178 | eeconfig_update_default_layer(default_layer); | 163 | float tone_qwerty[][2] = SONG(QWERTY_SOUND); |
| 179 | default_layer_set(default_layer); | 164 | float tone_dvorak[][2] = SONG(DVORAK_SOUND); |
| 180 | }; | 165 | float tone_colemak[][2] = SONG(COLEMAK_SOUND); |
| 166 | #endif | ||
| 181 | 167 | ||
| 182 | void matrix_init_user(void) { | 168 | void matrix_init_user(void) { |
| 183 | // This will disable the red LEDs on the ProMicros | 169 | #ifdef BOOTLOADER_CATERINA |
| 184 | DDRD &= ~(1<<5); | 170 | // This will disable the red LEDs on the ProMicros |
| 185 | PORTD &= ~(1<<5); | 171 | setPinInput(D5); |
| 186 | DDRB &= ~(1<<0); | 172 | writePinLow(D5); |
| 187 | PORTB &= ~(1<<0); | 173 | setPinInput(B0); |
| 174 | writePinLow(B0); | ||
| 175 | #endif | ||
| 188 | }; | 176 | }; |
| 189 | 177 | ||
| 178 | layer_state_t layer_state_set_user(layer_state_t state) { return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); }; | ||
| 179 | |||
| 190 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 180 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 191 | switch (keycode) { | 181 | if (record->event.pressed) { |
| 192 | case QWERTY: | 182 | switch (keycode) { |
| 193 | if (record->event.pressed) { | 183 | case QWERTY: |
| 194 | persistent_default_layer_set(1UL<<_QWERTY); | 184 | set_single_persistent_default_layer(_QWERTY); |
| 195 | } | 185 | return false; |
| 196 | return false; | 186 | case COLEMAK: |
| 197 | break; | 187 | set_single_persistent_default_layer(_COLEMAK); |
| 198 | case COLEMAK: | 188 | return false; |
| 199 | if (record->event.pressed) { | 189 | case DVORAK: |
| 200 | persistent_default_layer_set(1UL<<_COLEMAK); | 190 | set_single_persistent_default_layer(_DVORAK); |
| 201 | } | 191 | return false; |
| 202 | return false; | 192 | } |
| 203 | break; | 193 | } |
| 204 | case DVORAK: | ||
| 205 | if (record->event.pressed) { | ||
| 206 | persistent_default_layer_set(1UL<<_DVORAK); | ||
| 207 | } | ||
| 208 | return false; | ||
| 209 | break; | ||
| 210 | case LOWER: | ||
| 211 | if (record->event.pressed) { | ||
| 212 | layer_on(_LOWER); | ||
| 213 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 214 | } else { | ||
| 215 | layer_off(_LOWER); | ||
| 216 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 217 | } | ||
| 218 | return false; | ||
| 219 | break; | ||
| 220 | case RAISE: | ||
| 221 | if (record->event.pressed) { | ||
| 222 | layer_on(_RAISE); | ||
| 223 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 224 | } else { | ||
| 225 | layer_off(_RAISE); | ||
| 226 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 227 | } | ||
| 228 | return false; | ||
| 229 | break; | ||
| 230 | } | ||
| 231 | return true; | 194 | return true; |
| 232 | }; | 195 | } \ No newline at end of file |
diff --git a/keyboards/orthodox/keymaps/xyverz/config.h b/keyboards/orthodox/keymaps/xyverz/config.h index fc6d5d23b..a44d2b5ae 100644 --- a/keyboards/orthodox/keymaps/xyverz/config.h +++ b/keyboards/orthodox/keymaps/xyverz/config.h | |||
| @@ -19,10 +19,7 @@ You should have received a copy of the GNU General Public License | |||
| 19 | along with this program. If not, see <http://www.gnu.org/licenses/>. | 19 | along with this program. If not, see <http://www.gnu.org/licenses/>. |
| 20 | */ | 20 | */ |
| 21 | 21 | ||
| 22 | #ifndef CONFIG_USER_H | 22 | #pragma once |
| 23 | #define CONFIG_USER_H | ||
| 24 | |||
| 25 | #include "../../config.h" | ||
| 26 | 23 | ||
| 27 | /* Use I2C or Serial, not both */ | 24 | /* Use I2C or Serial, not both */ |
| 28 | 25 | ||
| @@ -33,6 +30,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 33 | 30 | ||
| 34 | #define MASTER_LEFT | 31 | #define MASTER_LEFT |
| 35 | // #define _MASTER_RIGHT | 32 | // #define _MASTER_RIGHT |
| 36 | // #define EE_HANDS | 33 | // #define EE_HANDS \ No newline at end of file |
| 37 | |||
| 38 | #endif | ||
diff --git a/keyboards/orthodox/keymaps/xyverz/keymap.c b/keyboards/orthodox/keymaps/xyverz/keymap.c index df66e0fc5..cc3c38943 100644 --- a/keyboards/orthodox/keymaps/xyverz/keymap.c +++ b/keyboards/orthodox/keymaps/xyverz/keymap.c | |||
| @@ -1,50 +1,16 @@ | |||
| 1 | /* | 1 | #include QMK_KEYBOARD_H |
| 2 | This is the keymap for the keyboard | ||
| 3 | 2 | ||
| 4 | Copyright 2012 Jun Wako <wakojun@gmail.com> | 3 | enum layer_names { _QWERTY, _COLEMAK, _DVORAK, _LOWER, _RAISE, _ADJUST }; |
| 5 | Copyright 2015 Jack Humbert | ||
| 6 | Copyright 2017 Art Ortenburger | ||
| 7 | 4 | ||
| 8 | This program is free software: you can redistribute it and/or modify | 5 | enum custom_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK, LOWER, RAISE, ADJUST }; |
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation, either version 2 of the License, or | ||
| 11 | (at your option) any later version. | ||
| 12 | 6 | ||
| 13 | This program is distributed in the hope that it will be useful, | 7 | // Aliases to keep the keymap tidy |
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 8 | #define ADJUST MO(_ADJUST) |
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 9 | #define LOWER MO(_LOWER) |
| 16 | GNU General Public License for more details. | 10 | #define RAISE MO(_RAISE) |
| 17 | 11 | ||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 20 | */ | ||
| 21 | |||
| 22 | #include QMK_KEYBOARD_H | ||
| 23 | #include "action_layer.h" | ||
| 24 | #include "eeconfig.h" | ||
| 25 | |||
| 26 | extern keymap_config_t keymap_config; | ||
| 27 | |||
| 28 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | ||
| 29 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||
| 30 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||
| 31 | // entirely and just use numbers. | ||
| 32 | #define _DVORAK 0 | ||
| 33 | #define _QWERTY 1 | ||
| 34 | #define _COLEMAK 2 | ||
| 35 | #define _LOWER 3 | ||
| 36 | #define _RAISE 4 | ||
| 37 | #define _ADJUST 16 | ||
| 38 | |||
| 39 | enum custom_keycodes { | ||
| 40 | DVORAK = SAFE_RANGE, | ||
| 41 | QWERTY, | ||
| 42 | COLEMAK, | ||
| 43 | LOWER, | ||
| 44 | RAISE, | ||
| 45 | ADJUST, | ||
| 46 | }; | ||
| 47 | 12 | ||
| 13 | // clang-format off | ||
| 48 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 14 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 49 | 15 | ||
| 50 | [_DVORAK] = LAYOUT ( \ | 16 | [_DVORAK] = LAYOUT ( \ |
| @@ -85,69 +51,39 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 85 | 51 | ||
| 86 | 52 | ||
| 87 | }; | 53 | }; |
| 54 | // clang-format on | ||
| 55 | |||
| 56 | #ifdef AUDIO_ENABLE | ||
| 57 | float tone_qwerty[][2] = SONG(QWERTY_SOUND); | ||
| 58 | float tone_dvorak[][2] = SONG(DVORAK_SOUND); | ||
| 59 | float tone_colemak[][2] = SONG(COLEMAK_SOUND); | ||
| 60 | #endif | ||
| 61 | |||
| 62 | void matrix_init_user(void) { | ||
| 63 | #ifdef BOOTLOADER_CATERINA | ||
| 64 | // This will disable the red LEDs on the ProMicros | ||
| 65 | setPinInput(D5); | ||
| 66 | writePinLow(D5); | ||
| 67 | setPinInput(B0); | ||
| 68 | writePinLow(B0); | ||
| 69 | #endif | ||
| 70 | }; | ||
| 88 | 71 | ||
| 89 | void persistent_default_layer_set(uint16_t default_layer) { | 72 | layer_state_t layer_state_set_user(layer_state_t state) { return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); }; |
| 90 | eeconfig_update_default_layer(default_layer); | ||
| 91 | default_layer_set(default_layer); | ||
| 92 | } | ||
| 93 | 73 | ||
| 94 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 74 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 95 | switch (keycode) { | 75 | if (record->event.pressed) { |
| 96 | case QWERTY: | 76 | switch (keycode) { |
| 97 | if (record->event.pressed) { | 77 | case QWERTY: |
| 98 | #ifdef AUDIO_ENABLE | 78 | set_single_persistent_default_layer(_QWERTY); |
| 99 | PLAY_NOTE_ARRAY(tone_qwerty, false, 0); | 79 | return false; |
| 100 | #endif | 80 | case COLEMAK: |
| 101 | persistent_default_layer_set(1UL<<_QWERTY); | 81 | set_single_persistent_default_layer(_COLEMAK); |
| 102 | } | 82 | return false; |
| 103 | return false; | 83 | case DVORAK: |
| 104 | break; | 84 | set_single_persistent_default_layer(_DVORAK); |
| 105 | case COLEMAK: | 85 | return false; |
| 106 | if (record->event.pressed) { | 86 | } |
| 107 | #ifdef AUDIO_ENABLE | 87 | } |
| 108 | PLAY_NOTE_ARRAY(tone_colemak, false, 0); | 88 | return true; |
| 109 | #endif | 89 | } \ No newline at end of file |
| 110 | persistent_default_layer_set(1UL<<_COLEMAK); | ||
| 111 | } | ||
| 112 | return false; | ||
| 113 | break; | ||
| 114 | case DVORAK: | ||
| 115 | if (record->event.pressed) { | ||
| 116 | #ifdef AUDIO_ENABLE | ||
| 117 | PLAY_NOTE_ARRAY(tone_dvorak, false, 0); | ||
| 118 | #endif | ||
| 119 | persistent_default_layer_set(1UL<<_DVORAK); | ||
| 120 | } | ||
| 121 | return false; | ||
| 122 | break; | ||
| 123 | case LOWER: | ||
| 124 | if (record->event.pressed) { | ||
| 125 | layer_on(_LOWER); | ||
| 126 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 127 | } else { | ||
| 128 | layer_off(_LOWER); | ||
| 129 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 130 | } | ||
| 131 | return false; | ||
| 132 | break; | ||
| 133 | case RAISE: | ||
| 134 | if (record->event.pressed) { | ||
| 135 | layer_on(_RAISE); | ||
| 136 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 137 | } else { | ||
| 138 | layer_off(_RAISE); | ||
| 139 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 140 | } | ||
| 141 | return false; | ||
| 142 | break; | ||
| 143 | case ADJUST: | ||
| 144 | if (record->event.pressed) { | ||
| 145 | layer_on(_ADJUST); | ||
| 146 | } else { | ||
| 147 | layer_off(_ADJUST); | ||
| 148 | } | ||
| 149 | return false; | ||
| 150 | break; | ||
| 151 | } | ||
| 152 | return true; | ||
| 153 | } | ||
diff --git a/keyboards/keebio/fourier/keymaps/xyverz/config.h b/keyboards/rgbkb/sol/keymaps/xyverz/config.h index 9b46a61cc..334eee608 100644 --- a/keyboards/keebio/fourier/keymaps/xyverz/config.h +++ b/keyboards/rgbkb/sol/keymaps/xyverz/config.h | |||
| @@ -18,16 +18,9 @@ You should have received a copy of the GNU General Public License | |||
| 18 | along with this program. If not, see <http://www.gnu.org/licenses/>. | 18 | along with this program. If not, see <http://www.gnu.org/licenses/>. |
| 19 | */ | 19 | */ |
| 20 | 20 | ||
| 21 | #ifndef CONFIG_USER_H | 21 | #pragma once |
| 22 | #define CONFIG_USER_H | ||
| 23 | 22 | ||
| 24 | #include "config_common.h" | ||
| 25 | 23 | ||
| 26 | /* Use I2C or Serial, not both */ | 24 | // place overrides here |
| 27 | 25 | ||
| 28 | #define USE_SERIAL | 26 | /* #define SSD1306OLED */ |
| 29 | // #define USE_I2C | ||
| 30 | |||
| 31 | #define EE_HANDS | ||
| 32 | |||
| 33 | #endif | ||
diff --git a/keyboards/rgbkb/sol/keymaps/xyverz/keymap.c b/keyboards/rgbkb/sol/keymaps/xyverz/keymap.c new file mode 100644 index 000000000..f5cf9ed3c --- /dev/null +++ b/keyboards/rgbkb/sol/keymaps/xyverz/keymap.c | |||
| @@ -0,0 +1,330 @@ | |||
| 1 | #include QMK_KEYBOARD_H | ||
| 2 | #ifdef PROTOCOL_LUFA | ||
| 3 | #include "lufa.h" | ||
| 4 | #include "split_util.h" | ||
| 5 | #endif | ||
| 6 | #ifdef SSD1306OLED | ||
| 7 | #include "common/ssd1306.h" | ||
| 8 | #endif | ||
| 9 | |||
| 10 | extern keymap_config_t keymap_config; | ||
| 11 | |||
| 12 | #ifdef RGBLIGHT_ENABLE | ||
| 13 | //Following line allows macro to read current RGB settings | ||
| 14 | extern rgblight_config_t rgblight_config; | ||
| 15 | #endif | ||
| 16 | |||
| 17 | extern uint8_t is_master; | ||
| 18 | |||
| 19 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | ||
| 20 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||
| 21 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||
| 22 | // entirely and just use numbers. | ||
| 23 | enum layer_number { | ||
| 24 | _DVORAK = 0, | ||
| 25 | _DESTINY, | ||
| 26 | _QWERTY, | ||
| 27 | _COLEMAK, | ||
| 28 | _LOWER, | ||
| 29 | _RAISE, | ||
| 30 | _ADJUST | ||
| 31 | }; | ||
| 32 | |||
| 33 | enum custom_keycodes { | ||
| 34 | DVORAK = SAFE_RANGE, | ||
| 35 | DESTINY, | ||
| 36 | QWERTY, | ||
| 37 | COLEMAK, | ||
| 38 | LOWER, | ||
| 39 | RAISE, | ||
| 40 | ADJUST, | ||
| 41 | BACKLIT, | ||
| 42 | RGBRST | ||
| 43 | }; | ||
| 44 | |||
| 45 | enum macro_keycodes { | ||
| 46 | KC_SAMPLEMACRO, | ||
| 47 | }; | ||
| 48 | |||
| 49 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 50 | [_DVORAK] = LAYOUT( \ | ||
| 51 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_HOME, KC_PGUP, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, \ | ||
| 52 | KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_END, KC_PGDN, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, \ | ||
| 53 | KC_RCTL, KC_A, KC_O, KC_E, KC_U, KC_I, XXXXXXX, XXXXXXX, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, \ | ||
| 54 | KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, XXXXXXX, XXXXXXX, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, \ | ||
| 55 | KC_GRV, KC_LGUI, KC_LEFT, KC_RGHT, LOWER, KC_LCTL, KC_LALT, KC_RALT, KC_RCTL, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_RCTL, \ | ||
| 56 | KC_BSPC, KC_RGUI, KC_ENT, KC_SPC \ | ||
| 57 | |||
| 58 | ), | ||
| 59 | |||
| 60 | [_DESTINY] = LAYOUT( \ | ||
| 61 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_HOME, KC_PGUP, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, \ | ||
| 62 | KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_END, KC_PGDN, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, \ | ||
| 63 | KC_RCTL, KC_A, KC_O, KC_E, KC_U, KC_I, XXXXXXX, XXXXXXX, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, \ | ||
| 64 | KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, XXXXXXX, XXXXXXX, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, \ | ||
| 65 | KC_GRV, KC_LGUI, KC_LEFT, KC_RGHT, LOWER, KC_LCTL, KC_LALT, KC_RALT, KC_RCTL, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_RCTL, \ | ||
| 66 | KC_BSPC, KC_RGUI, KC_ENT, KC_SPC \ | ||
| 67 | |||
| 68 | ), | ||
| 69 | |||
| 70 | [_QWERTY] = LAYOUT( \ | ||
| 71 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_HOME, KC_PGUP, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, \ | ||
| 72 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_END, KC_PGDN, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_SLSH, \ | ||
| 73 | KC_RCTL, KC_A, KC_S, KC_D, KC_F, KC_G, XXXXXXX, XXXXXXX, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \ | ||
| 74 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, XXXXXXX, XXXXXXX, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ | ||
| 75 | KC_GRV, KC_LGUI, KC_LEFT, KC_RGHT, LOWER, KC_LCTL, KC_LALT, KC_RALT, KC_RCTL, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_RCTL, \ | ||
| 76 | KC_BSPC, KC_RGUI, KC_ENT, KC_SPC \ | ||
| 77 | ), | ||
| 78 | |||
| 79 | [_COLEMAK] = LAYOUT( \ | ||
| 80 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_HOME, KC_PGUP, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, \ | ||
| 81 | KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_END, KC_PGDN, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_SLSH, \ | ||
| 82 | KC_RCTL, KC_A, KC_R, KC_S, KC_T, KC_G, XXXXXXX, XXXXXXX, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, \ | ||
| 83 | KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, XXXXXXX, XXXXXXX, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ | ||
| 84 | KC_GRV, KC_LGUI, KC_LEFT, KC_RGHT, LOWER, KC_LCTL, KC_LALT, KC_RALT, KC_RCTL, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_RCTL, \ | ||
| 85 | KC_BSPC, KC_RGUI, KC_ENT, KC_SPC \ | ||
| 86 | ), | ||
| 87 | |||
| 88 | [_LOWER] = LAYOUT( \ | ||
| 89 | KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12, \ | ||
| 90 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ | ||
| 91 | KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, XXXXXXX, XXXXXXX, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, \ | ||
| 92 | _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______, _______, \ | ||
| 93 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ | ||
| 94 | KC_DEL, _______, _______, KC_INS \ | ||
| 95 | ), | ||
| 96 | |||
| 97 | [_RAISE] = LAYOUT( \ | ||
| 98 | KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12, \ | ||
| 99 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ | ||
| 100 | KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, XXXXXXX, XXXXXXX, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, \ | ||
| 101 | _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______, _______, \ | ||
| 102 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ | ||
| 103 | KC_DEL, _______, _______, KC_INS \ | ||
| 104 | ), | ||
| 105 | |||
| 106 | /* ADJUST | ||
| 107 | * ,------------------------------------------------. ,------------------------------------------------. | ||
| 108 | * | F11 | F1 | F2 | F3 | F4 | F5 | RESET| | | F6 | F7 | F8 | F9 | F10 | F12 | | ||
| 109 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 110 | * | | |QWERTY|COLEMK|DVORAK|DESTNY| | | | | PrSc | ScLk | NmLk | | | | ||
| 111 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 112 | * | | | Mute | Vol- | Vol+ | | | | |RGBTOG|RGBMOD| HUI | SAI | VAI | | | ||
| 113 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 114 | * | | | Prev | Play | Next | | | | | |RGBRMD| HUD | SAD | VAD | | | ||
| 115 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 116 | * | | | | Home | End | | | | | | PgUp | PgDn | | | | | ||
| 117 | * `------+------+------+------+------+------+------| |------+------+------+------+------+------+------' | ||
| 118 | * | Del | | | | Ins | | ||
| 119 | * `-------------' `-------------' | ||
| 120 | */ | ||
| 121 | |||
| 122 | [_ADJUST] = LAYOUT( \ | ||
| 123 | _______, _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, \ | ||
| 124 | _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_NLCK, _______, _______, \ | ||
| 125 | KC_CAPS, _______, QWERTY, COLEMAK, DVORAK, DESTINY, XXXXXXX, XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, \ | ||
| 126 | _______, _______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, _______, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, _______, \ | ||
| 127 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ | ||
| 128 | KC_DEL, _______, _______, KC_INS \ | ||
| 129 | ) | ||
| 130 | }; | ||
| 131 | |||
| 132 | |||
| 133 | |||
| 134 | // define variables for reactive RGB | ||
| 135 | bool TOG_STATUS = false; | ||
| 136 | int RGB_current_mode; | ||
| 137 | |||
| 138 | // Setting ADJ layer RGB back to default | ||
| 139 | void update_tri_layer_RGB(uint8_t layer1, uint8_t layer2, uint8_t layer3) { | ||
| 140 | if (IS_LAYER_ON(layer1) && IS_LAYER_ON(layer2)) { | ||
| 141 | #ifdef RGBLIGHT_ENABLE | ||
| 142 | //rgblight_mode(RGB_current_mode); | ||
| 143 | #endif | ||
| 144 | layer_on(layer3); | ||
| 145 | } else { | ||
| 146 | layer_off(layer3); | ||
| 147 | } | ||
| 148 | } | ||
| 149 | |||
| 150 | layer_state_t layer_state_set_user(layer_state_t state) { | ||
| 151 | return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); | ||
| 152 | } | ||
| 153 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
| 154 | switch (keycode) { | ||
| 155 | case DVORAK: | ||
| 156 | if (record->event.pressed) { | ||
| 157 | set_single_persistent_default_layer(_DVORAK); | ||
| 158 | } | ||
| 159 | return false; | ||
| 160 | case COLEMAK: | ||
| 161 | if (record->event.pressed) { | ||
| 162 | set_single_persistent_default_layer(_COLEMAK); | ||
| 163 | } | ||
| 164 | return false; | ||
| 165 | case QWERTY: | ||
| 166 | if (record->event.pressed) { | ||
| 167 | set_single_persistent_default_layer(_QWERTY); | ||
| 168 | } | ||
| 169 | return false; | ||
| 170 | |||
| 171 | /* | ||
| 172 | Commenting this out since I removed the layer, but I want this in here for reference. | ||
| 173 | |||
| 174 | case FN: | ||
| 175 | if (record->event.pressed) { | ||
| 176 | //not sure how to have keyboard check mode and set it to a variable, so my work around | ||
| 177 | //uses another variable that would be set to true after the first time a reactive key is pressed. | ||
| 178 | if (TOG_STATUS) { //TOG_STATUS checks is another reactive key currently pressed, only changes RGB mode if returns false | ||
| 179 | } else { | ||
| 180 | TOG_STATUS = !TOG_STATUS; | ||
| 181 | #ifdef RGBLIGHT_ENABLE | ||
| 182 | //rgblight_mode(15); | ||
| 183 | #endif | ||
| 184 | } | ||
| 185 | layer_on(_FN); | ||
| 186 | } else { | ||
| 187 | #ifdef RGBLIGHT_ENABLE | ||
| 188 | //rgblight_mode(RGB_current_mode); // revert RGB to initial mode prior to RGB mode change | ||
| 189 | #endif | ||
| 190 | layer_off(_FN); | ||
| 191 | TOG_STATUS = false; | ||
| 192 | } | ||
| 193 | return false; | ||
| 194 | break; | ||
| 195 | */ | ||
| 196 | case ADJUST: | ||
| 197 | if (record->event.pressed) { | ||
| 198 | layer_on(_ADJUST); | ||
| 199 | } else { | ||
| 200 | layer_off(_ADJUST); | ||
| 201 | } | ||
| 202 | return false; | ||
| 203 | break; | ||
| 204 | //led operations - RGB mode change now updates the RGB_current_mode to allow the right RGB mode to be set after reactive keys are released | ||
| 205 | case RGBRST: | ||
| 206 | #ifdef RGBLIGHT_ENABLE | ||
| 207 | if (record->event.pressed) { | ||
| 208 | eeconfig_update_rgblight_default(); | ||
| 209 | rgblight_enable(); | ||
| 210 | RGB_current_mode = rgblight_config.mode; | ||
| 211 | } | ||
| 212 | #endif | ||
| 213 | break; | ||
| 214 | } | ||
| 215 | return true; | ||
| 216 | } | ||
| 217 | |||
| 218 | void matrix_init_user(void) { | ||
| 219 | #ifdef RGBLIGHT_ENABLE | ||
| 220 | RGB_current_mode = rgblight_config.mode; | ||
| 221 | #endif | ||
| 222 | //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h | ||
| 223 | #ifdef SSD1306OLED | ||
| 224 | iota_gfx_init(!has_usb()); // turns on the display | ||
| 225 | #endif | ||
| 226 | } | ||
| 227 | |||
| 228 | |||
| 229 | //SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h | ||
| 230 | #ifdef SSD1306OLED | ||
| 231 | |||
| 232 | // hook point for 'led_test' keymap | ||
| 233 | // 'default' keymap's led_test_init() is empty function, do nothing | ||
| 234 | // 'led_test' keymap's led_test_init() force rgblight_mode_noeeprom(35); | ||
| 235 | __attribute__ ((weak)) | ||
| 236 | void led_test_init(void) {} | ||
| 237 | |||
| 238 | void matrix_scan_user(void) { | ||
| 239 | led_test_init(); | ||
| 240 | iota_gfx_task(); // this is what updates the display continuously | ||
| 241 | } | ||
| 242 | |||
| 243 | void matrix_update(struct CharacterMatrix *dest, | ||
| 244 | const struct CharacterMatrix *source) { | ||
| 245 | if (memcmp(dest->display, source->display, sizeof(dest->display))) { | ||
| 246 | memcpy(dest->display, source->display, sizeof(dest->display)); | ||
| 247 | dest->dirty = true; | ||
| 248 | } | ||
| 249 | } | ||
| 250 | |||
| 251 | //assign the right code to your layers for OLED display | ||
| 252 | #define L_BASE 0 | ||
| 253 | #define L_FN (1<<_FN) | ||
| 254 | #define L_ADJ (1<<_ADJ) | ||
| 255 | |||
| 256 | static void render_logo(struct CharacterMatrix *matrix) { | ||
| 257 | |||
| 258 | static char logo[]={ | ||
| 259 | 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94, | ||
| 260 | 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4, | ||
| 261 | 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4, | ||
| 262 | 0}; | ||
| 263 | matrix_write(matrix, logo); | ||
| 264 | //matrix_write_P(&matrix, PSTR(" Split keyboard kit")); | ||
| 265 | } | ||
| 266 | |||
| 267 | |||
| 268 | |||
| 269 | void render_status(struct CharacterMatrix *matrix) { | ||
| 270 | |||
| 271 | // Render to mode icon | ||
| 272 | static char logo[][2][3]={{{0x95,0x96,0},{0xb5,0xb6,0}},{{0x97,0x98,0},{0xb7,0xb8,0}}}; | ||
| 273 | if(keymap_config.swap_lalt_lgui==false){ | ||
| 274 | matrix_write(matrix, logo[0][0]); | ||
| 275 | matrix_write_P(matrix, PSTR("\n")); | ||
| 276 | matrix_write(matrix, logo[0][1]); | ||
| 277 | }else{ | ||
| 278 | matrix_write(matrix, logo[1][0]); | ||
| 279 | matrix_write_P(matrix, PSTR("\n")); | ||
| 280 | matrix_write(matrix, logo[1][1]); | ||
| 281 | } | ||
| 282 | |||
| 283 | // Define layers here, Have not worked out how to have text displayed for each layer. Copy down the number you see and add a case for it below | ||
| 284 | char buf[40]; | ||
| 285 | snprintf(buf,sizeof(buf), "Undef-%ld", layer_state); | ||
| 286 | matrix_write_P(matrix, PSTR("\nLayer: ")); | ||
| 287 | switch (layer_state) { | ||
| 288 | case L_BASE: | ||
| 289 | matrix_write_P(matrix, PSTR("Default")); | ||
| 290 | break; | ||
| 291 | /* case L_FN: | ||
| 292 | matrix_write_P(matrix, PSTR("FN")); | ||
| 293 | break; */ | ||
| 294 | case L_ADJ: | ||
| 295 | /* case L_ADJ_TRI: */ | ||
| 296 | matrix_write_P(matrix, PSTR("ADJ")); | ||
| 297 | break; | ||
| 298 | default: | ||
| 299 | matrix_write(matrix, buf); | ||
| 300 | } | ||
| 301 | |||
| 302 | // Host Keyboard LED Status | ||
| 303 | char led[40]; | ||
| 304 | snprintf(led, sizeof(led), "\n%s %s %s", | ||
| 305 | (IS_HOST_LED_ON(USB_LED_NUM_LOCK)) ? "NUMLOCK" : " ", | ||
| 306 | (IS_HOST_LED_ON(USB_LED_CAPS_LOCK)) ? "CAPS" : " ", | ||
| 307 | (IS_HOST_LED_ON(USB_LED_SCROLL_LOCK)) ? "SCLK" : " "); | ||
| 308 | matrix_write(matrix, led); | ||
| 309 | } | ||
| 310 | |||
| 311 | |||
| 312 | void iota_gfx_task_user(void) { | ||
| 313 | struct CharacterMatrix matrix; | ||
| 314 | |||
| 315 | #if DEBUG_TO_SCREEN | ||
| 316 | if (debug_enable) { | ||
| 317 | return; | ||
| 318 | } | ||
| 319 | #endif | ||
| 320 | |||
| 321 | matrix_clear(&matrix); | ||
| 322 | if(is_master){ | ||
| 323 | render_status(&matrix); | ||
| 324 | }else{ | ||
| 325 | render_logo(&matrix); | ||
| 326 | } | ||
| 327 | matrix_update(&display, &matrix); | ||
| 328 | } | ||
| 329 | |||
| 330 | #endif | ||
diff --git a/keyboards/rgbkb/sol/keymaps/xyverz/readme.md b/keyboards/rgbkb/sol/keymaps/xyverz/readme.md new file mode 100644 index 000000000..485426f8e --- /dev/null +++ b/keyboards/rgbkb/sol/keymaps/xyverz/readme.md | |||
| @@ -0,0 +1,132 @@ | |||
| 1 | # Xyverz's Sol Layout | ||
| 2 | ## Layout | ||
| 3 | |||
| 4 | ### Base modifier layout | ||
| 5 | ``` | ||
| 6 | * ,------------------------------------------------. ,------------------------------------------------. | ||
| 7 | * | ESC | | | | | | - | | = | | | | | | \ | | ||
| 8 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 9 | * | Tab | | | | | | [ | | ] | | | | | | / | | ||
| 10 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 11 | * | Del | | | | | | | | | | | | | | | | ||
| 12 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 13 | * |Shift | | | | | | | | | | | | | |Shift | | ||
| 14 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 15 | * | Adj | Alt | ` | Left | Rght | Ctrl | Alt | | Alt | Ctrl | Up | Down | / | = | Adj | | ||
| 16 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------' | ||
| 17 | * | BkSp | Win | | Enter| Space| | ||
| 18 | * `-------------' `-------------' | ||
| 19 | ``` | ||
| 20 | |||
| 21 | ### Qwerty alphas | ||
| 22 | ``` | ||
| 23 | * ,------------------------------------------------. ,------------------------------------------------. | ||
| 24 | * | | | | | | | | | | | | | | | | | ||
| 25 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 26 | * | | Q | W | E | R | T | | | | Y | U | I | O | P | | | ||
| 27 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 28 | * | | A | S | D | F | G | | | | H | J | K | L | ; | ' | | ||
| 29 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 30 | * | | Z | X | C | V | B | | | | N | M | , | . | / | | | ||
| 31 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 32 | * | | | | | | | | | | | | | | | | | ||
| 33 | * `------+------+------+------+------+------+------| |------+------+------+------+------+------+------' | ||
| 34 | * | | | | | | | ||
| 35 | * `-------------' `-------------' | ||
| 36 | ``` | ||
| 37 | |||
| 38 | ### Dvorak alphas | ||
| 39 | ``` | ||
| 40 | * ,------------------------------------------------. ,------------------------------------------------. | ||
| 41 | * | | | | | | | | | | | | | | | | | ||
| 42 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 43 | * | | " | , | . | P | Y | | | | F | G | C | R | L | | | ||
| 44 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 45 | * | | A | O | E | U | I | | | | D | H | T | N | S | - | | ||
| 46 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 47 | * | | ; | Q | J | K | X | | | | B | M | W | V | Z | | | ||
| 48 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 49 | * | | | | | | | | | | | | | | | | | ||
| 50 | * `------+------+------+------+------+------+------| |------+------+------+------+------+------+------' | ||
| 51 | * | | | | | | | ||
| 52 | * `-------------' `--------=----' | ||
| 53 | ``` | ||
| 54 | ### Colemak alphas | ||
| 55 | ``` | ||
| 56 | * ,------------------------------------------------. ,------------------------------------------------. | ||
| 57 | * | | | | | | | | | | | | | | | | | ||
| 58 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 59 | * | | Q | W | F | P | B | | | | J | L | U | Y | ; | | | ||
| 60 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 61 | * | | A | R | S | T | G | | | | K | N | E | I | O | ' | | ||
| 62 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 63 | * | | Z | X | C | D | V | | | | M | H | , | . | / | | | ||
| 64 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 65 | * | | | | | | | | | | | | | | | | | ||
| 66 | * `------+------+------+------+------+------+------| |------+------+------+------+------+------+------' | ||
| 67 | * | | | | | | | ||
| 68 | * `-------------' `-------------' | ||
| 69 | ``` | ||
| 70 | |||
| 71 | ### Adjust (ADJ) | ||
| 72 | ``` | ||
| 73 | * ,------------------------------------------------. ,------------------------------------------------. | ||
| 74 | * | F11 | F1 | F2 | F3 | F4 | F5 | RESET| | | F6 | F7 | F8 | F9 | F10 | F12 | | ||
| 75 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 76 | * | | |QWERTY|DVORAK|COLEMK| | | | | | PrSc | ScLk | NmLk | | | | ||
| 77 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 78 | * | | | Mute | Vol- | Vol+ | | | | |RGBTOG|RGBMOD| HUI | SAI | VAI | | | ||
| 79 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 80 | * | | | Prev | Play | Next | | | | | |RGBRMD| HUD | SAD | VAD | | | ||
| 81 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 82 | * | | | | Home | End | | | | | | PgUp | PgDn | | | | | ||
| 83 | * `------+------+------+------+------+------+------| |------+------+------+------+------+------+------' | ||
| 84 | * | Del | | | | Ins | | ||
| 85 | * `-------------' `-------------' | ||
| 86 | ``` | ||
| 87 | |||
| 88 | ## Customize | ||
| 89 | |||
| 90 | see `qmk_firmware/keyboards/sol/rev1/keymaps/default/rules.mk` | ||
| 91 | |||
| 92 | ``` | ||
| 93 | |||
| 94 | # Variables you can set for SOL | ||
| 95 | |||
| 96 | BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration | ||
| 97 | MOUSEKEY_ENABLE = no # Mouse keys | ||
| 98 | EXTRAKEY_ENABLE = yes # Audio control and System control | ||
| 99 | CONSOLE_ENABLE = no # Console for debug | ||
| 100 | COMMAND_ENABLE = ne # Commands for debug and configuration | ||
| 101 | NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | ||
| 102 | RGBLIGHT_ENABLE = yes # Enable global lighting effects. Do not enable with RGB Matrix | ||
| 103 | LED_ANIMATIONS = yes # LED animations | ||
| 104 | LED_MIRRORED = no # Mirror LEDs across halves (enable DIP 1 on slave, and DIP 2 and 3 on master) | ||
| 105 | RGB_MATRIX_ENABLE = no # Enable per-key coordinate based RGB effects. Do not enable with RGBlight | ||
| 106 | RGB_MATRIX_KEYPRESSES = no # Enable reactive per-key effects. Can be very laggy | ||
| 107 | RGBLIGHT_FULL_POWER = no # Allow maximum RGB brightness. Otherwise, limited to a safe level for a normal USB-A port | ||
| 108 | UNICODE_ENABLE = no # Unicode | ||
| 109 | SWAP_HANDS_ENABLE = no # Enable one-hand typing | ||
| 110 | ENCODER_ENABLE_CUSTOM = yes # Enable rotary encoder | ||
| 111 | |||
| 112 | OLED_ENABLE = yes # OLED_ENABLE | ||
| 113 | IOS_DEVICE_ENABLE = no # Limit max brightness to connect to IOS device (iPad,iPhone) | ||
| 114 | |||
| 115 | |||
| 116 | ``` | ||
| 117 | ## Compile | ||
| 118 | |||
| 119 | go to qmk top directory. | ||
| 120 | ``` | ||
| 121 | $ cd qmk_firmware | ||
| 122 | ``` | ||
| 123 | |||
| 124 | build | ||
| 125 | ``` | ||
| 126 | $ make sol:xyverz | ||
| 127 | ``` | ||
| 128 | |||
| 129 | After the initial flash with AVRdudess, you should be able to flash using this: | ||
| 130 | ``` | ||
| 131 | $ make sol:xyverz:flash | ||
| 132 | ``` | ||
diff --git a/keyboards/rgbkb/sol/keymaps/xyverz/rules.mk b/keyboards/rgbkb/sol/keymaps/xyverz/rules.mk new file mode 100644 index 000000000..bdec5946d --- /dev/null +++ b/keyboards/rgbkb/sol/keymaps/xyverz/rules.mk | |||
| @@ -0,0 +1,51 @@ | |||
| 1 | # Build Options | ||
| 2 | # change to "no" to disable the options, or define them in the Makefile in | ||
| 3 | # the appropriate keymap folder that will get included automatically | ||
| 4 | # | ||
| 5 | BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration | ||
| 6 | MOUSEKEY_ENABLE = no # Mouse keys | ||
| 7 | |||
| 8 | EXTRAKEY_ENABLE = yes # Audio control and System control | ||
| 9 | CONSOLE_ENABLE = no # Console for debug | ||
| 10 | COMMAND_ENABLE = no # Commands for debug and configuration | ||
| 11 | NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | ||
| 12 | RGBLIGHT_ENABLE = yes # Enable global lighting effects. Do not enable with RGB Matrix | ||
| 13 | RGBLIGHT_ANIMATIONS = yes # LED animations | ||
| 14 | LED_MIRRORED = yes # Mirror LEDs across halves (enable DIP 1 on slave, and DIP 2 and 3 on master) | ||
| 15 | RGB_MATRIX_ENABLE = no # Enable per-key coordinate based RGB effects. Do not enable with RGBlight | ||
| 16 | RGB_MATRIX_KEYPRESSES = no # Enable reactive per-key effects. Can be very laggy | ||
| 17 | RGBLIGHT_FULL_POWER = no # Allow maximum RGB brightness. Otherwise, limited to a safe level for a normal USB-A port | ||
| 18 | UNICODE_ENABLE = no # Unicode | ||
| 19 | SWAP_HANDS_ENABLE = no # Enable one-hand typing | ||
| 20 | ENCODER_ENABLE_CUSTOM = no # Enable rotary encoder | ||
| 21 | AUDIO_ENABLE = no | ||
| 22 | |||
| 23 | OLED_ENABLE = yes # OLED_ENABLE | ||
| 24 | IOS_DEVICE_ENABLE = no # Limit max brightness to connect to IOS device (iPad,iPhone) | ||
| 25 | |||
| 26 | # Do not edit past here | ||
| 27 | |||
| 28 | ifeq ($(strip $(OLED_ENABLE)), yes) | ||
| 29 | OPT_DEFS += -DOLED_ENABLE | ||
| 30 | endif | ||
| 31 | |||
| 32 | ifeq ($(strip $(ENCODER_ENABLE_CUSTOM)), yes) | ||
| 33 | OPT_DEFS += -DENCODER_ENABLE_CUSTOM | ||
| 34 | SRC += common/knob_v2.c | ||
| 35 | |||
| 36 | endif | ||
| 37 | |||
| 38 | ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes) | ||
| 39 | OPT_DEFS += -DIOS_DEVICE_ENABLE | ||
| 40 | |||
| 41 | else ifeq ($(strip $(RGBLIGHT_FULL_POWER)), yes) | ||
| 42 | OPT_DEFS += -DRGBLIGHT_FULL_POWER | ||
| 43 | endif | ||
| 44 | |||
| 45 | ifeq ($(strip $(RGB_MATRIX_KEYPRESSES)), yes) | ||
| 46 | OPT_DEFS += -DRGB_MATRIX_KEYPRESSES | ||
| 47 | endif | ||
| 48 | |||
| 49 | ifeq ($(strip $(LED_MIRRORED)), yes) | ||
| 50 | OPT_DEFS += -DLED_MIRRORED | ||
| 51 | endif \ No newline at end of file | ||
diff --git a/keyboards/thevankeyboards/minivan/keymaps/xyverz/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/xyverz/keymap.c index 059b7eb46..f5649573d 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/xyverz/keymap.c +++ b/keyboards/thevankeyboards/minivan/keymaps/xyverz/keymap.c | |||
| @@ -1,24 +1,8 @@ | |||
| 1 | #include QMK_KEYBOARD_H | 1 | #include QMK_KEYBOARD_H |
| 2 | 2 | ||
| 3 | extern keymap_config_t keymap_config; | 3 | enum layer_names { _QWERTY, _COLEMAK, _DVORAK, _LOWER, _RAISE, _ADJUST }; |
| 4 | 4 | ||
| 5 | enum planck_layers { | 5 | enum custom_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK, LOWER, RAISE, ADJUST }; |
| 6 | _QWERTY, | ||
| 7 | _COLEMAK, | ||
| 8 | _DVORAK, | ||
| 9 | _LOWER, | ||
| 10 | _RAISE, | ||
| 11 | _ADJUST | ||
| 12 | }; | ||
| 13 | |||
| 14 | enum planck_keycodes { | ||
| 15 | DVORAK = SAFE_RANGE, | ||
| 16 | QWERTY, | ||
| 17 | COLEMAK, | ||
| 18 | LOWER, | ||
| 19 | RAISE, | ||
| 20 | ADJUST | ||
| 21 | }; | ||
| 22 | 6 | ||
| 23 | // Aliases for some other things I want to try out | 7 | // Aliases for some other things I want to try out |
| 24 | #define RAI_ESC LT(_RAISE, KC_ESC) | 8 | #define RAI_ESC LT(_RAISE, KC_ESC) |
| @@ -26,6 +10,7 @@ enum planck_keycodes { | |||
| 26 | #define LOW_MIN LT(_LOWER, KC_MINS) // Same as above, but for Dvorak layer | 10 | #define LOW_MIN LT(_LOWER, KC_MINS) // Same as above, but for Dvorak layer |
| 27 | #define GUIBSPC GUI_T(KC_BSPC) | 11 | #define GUIBSPC GUI_T(KC_BSPC) |
| 28 | 12 | ||
| 13 | // clang-format off | ||
| 29 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 14 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 30 | [_DVORAK] = LAYOUT( /* 0: Dvorak */ | 15 | [_DVORAK] = LAYOUT( /* 0: Dvorak */ |
| 31 | KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, | 16 | KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, |
| @@ -69,52 +54,23 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 69 | KC_HOME, KC_END, _______, _______, _______, _______, KC_PGUP, KC_PGDN | 54 | KC_HOME, KC_END, _______, _______, _______, _______, KC_PGUP, KC_PGDN |
| 70 | ) | 55 | ) |
| 71 | }; | 56 | }; |
| 57 | // clang-format on | ||
| 72 | 58 | ||
| 73 | void persistent_default_layer_set(uint16_t default_layer) { | 59 | layer_state_t layer_state_set_user(layer_state_t state) { return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); }; |
| 74 | eeconfig_update_default_layer(default_layer); | ||
| 75 | default_layer_set(default_layer); | ||
| 76 | } | ||
| 77 | 60 | ||
| 78 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 61 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 79 | switch (keycode) { | 62 | if (record->event.pressed) { |
| 80 | case QWERTY: | 63 | switch (keycode) { |
| 81 | if (record->event.pressed) { | 64 | case QWERTY: |
| 82 | persistent_default_layer_set(1UL<<_QWERTY); | 65 | set_single_persistent_default_layer(_QWERTY); |
| 83 | } | 66 | return false; |
| 84 | return false; | 67 | case COLEMAK: |
| 85 | break; | 68 | set_single_persistent_default_layer(_COLEMAK); |
| 86 | case COLEMAK: | 69 | return false; |
| 87 | if (record->event.pressed) { | 70 | case DVORAK: |
| 88 | persistent_default_layer_set(1UL<<_COLEMAK); | 71 | set_single_persistent_default_layer(_DVORAK); |
| 89 | } | 72 | return false; |
| 90 | return false; | 73 | } |
| 91 | break; | 74 | } |
| 92 | case DVORAK: | 75 | return true; |
| 93 | if (record->event.pressed) { | 76 | } \ No newline at end of file |
| 94 | persistent_default_layer_set(1UL<<_DVORAK); | ||
| 95 | } | ||
| 96 | return false; | ||
| 97 | break; | ||
| 98 | case LOWER: | ||
| 99 | if (record->event.pressed) { | ||
| 100 | layer_on(_LOWER); | ||
| 101 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 102 | } else { | ||
| 103 | layer_off(_LOWER); | ||
| 104 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 105 | } | ||
| 106 | return false; | ||
| 107 | break; | ||
| 108 | case RAISE: | ||
| 109 | if (record->event.pressed) { | ||
| 110 | layer_on(_RAISE); | ||
| 111 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 112 | } else { | ||
| 113 | layer_off(_RAISE); | ||
| 114 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 115 | } | ||
| 116 | return false; | ||
| 117 | break; | ||
| 118 | } | ||
| 119 | return true; | ||
| 120 | } | ||
diff --git a/keyboards/gh60/revc/keymaps/xyverz/keymap.c b/layouts/community/60_ansi/xyverz/keymap.c index e47fcc2f9..61176ef2b 100644 --- a/keyboards/gh60/revc/keymaps/xyverz/keymap.c +++ b/layouts/community/60_ansi/xyverz/keymap.c | |||
| @@ -1,23 +1,15 @@ | |||
| 1 | #include QMK_KEYBOARD_H | 1 | #include QMK_KEYBOARD_H |
| 2 | 2 | ||
| 3 | enum layer_names { | ||
| 4 | _QW, | ||
| 5 | _DV, | ||
| 6 | _CM, | ||
| 7 | _FL, | ||
| 8 | }; | ||
| 3 | 9 | ||
| 4 | extern keymap_config_t keymap_config; | 10 | enum planck_keycodes { DVORAK = SAFE_RANGE, QWERTY, COLEMAK }; |
| 5 | |||
| 6 | |||
| 7 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | ||
| 8 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||
| 9 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||
| 10 | // entirely and just use numbers. | ||
| 11 | #define _QW 0 | ||
| 12 | #define _DV 1 | ||
| 13 | #define _CM 2 | ||
| 14 | #define _FL 3 | ||
| 15 | |||
| 16 | // Macro name shortcuts | ||
| 17 | #define QWERTY M(_QW) | ||
| 18 | #define DVORAK M(_DV) | ||
| 19 | #define COLEMAK M(_CM) | ||
| 20 | 11 | ||
| 12 | // clang-format off | ||
| 21 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 13 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 22 | 14 | ||
| 23 | /* | 15 | /* |
| @@ -113,30 +105,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 113 | ), | 105 | ), |
| 114 | 106 | ||
| 115 | }; | 107 | }; |
| 108 | // clang-format on | ||
| 116 | 109 | ||
| 117 | void persistent_default_layer_set(uint16_t default_layer) { | 110 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 118 | eeconfig_update_default_layer(default_layer); | 111 | if (record->event.pressed) { |
| 119 | default_layer_set(default_layer); | 112 | switch (keycode) { |
| 120 | } | 113 | case DVORAK: |
| 121 | 114 | set_single_persistent_default_layer(_DV); | |
| 122 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | 115 | return false; |
| 123 | { | 116 | case QWERTY: |
| 124 | switch(id) { | 117 | set_single_persistent_default_layer(_QW); |
| 125 | case _DV: | 118 | return false; |
| 126 | if (record->event.pressed) { | 119 | case COLEMAK: |
| 127 | persistent_default_layer_set(1UL<<_DV); | 120 | set_single_persistent_default_layer(_CM); |
| 128 | } | 121 | return false; |
| 129 | break; | 122 | } |
| 130 | case _QW: | 123 | } |
| 131 | if (record->event.pressed) { | 124 | return true; |
| 132 | persistent_default_layer_set(1UL<<_QW); | 125 | } \ No newline at end of file |
| 133 | } | ||
| 134 | break; | ||
| 135 | case _CM: | ||
| 136 | if (record->event.pressed) { | ||
| 137 | persistent_default_layer_set(1UL<<_CM); | ||
| 138 | } | ||
| 139 | break; | ||
| 140 | } | ||
| 141 | return MACRO_NONE; | ||
| 142 | }; | ||
diff --git a/layouts/community/66_ansi/xyverz/config.h b/layouts/community/66_ansi/xyverz/config.h new file mode 100644 index 000000000..06e5830af --- /dev/null +++ b/layouts/community/66_ansi/xyverz/config.h | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | #pragma once | ||
| 2 | |||
| 3 | #define TAPPING_TERM 600 // ms | ||
| 4 | #undef RGBLIGHT_HUE_STEP | ||
| 5 | #define RGBLIGHT_HUE_STEP 8 | ||
diff --git a/keyboards/clueboard/66/keymaps/xyverz/keymap.c b/layouts/community/66_ansi/xyverz/keymap.c index 3341ced91..521379bde 100644 --- a/keyboards/clueboard/66/keymaps/xyverz/keymap.c +++ b/layouts/community/66_ansi/xyverz/keymap.c | |||
| @@ -2,20 +2,14 @@ | |||
| 2 | // It's based on the default keymap, but Dvorak! | 2 | // It's based on the default keymap, but Dvorak! |
| 3 | 3 | ||
| 4 | #include QMK_KEYBOARD_H | 4 | #include QMK_KEYBOARD_H |
| 5 | #include "action_layer.h" | ||
| 6 | #include "eeconfig.h" | ||
| 7 | 5 | ||
| 8 | extern keymap_config_t keymap_config; | 6 | enum layer_names { |
| 9 | 7 | _QWERTY, | |
| 10 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | 8 | _DVORAK, |
| 11 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | 9 | _COLEMAK, |
| 12 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | 10 | _FL, |
| 13 | // entirely and just use numbers. | 11 | _CL |
| 14 | #define _QWERTY 0 | 12 | }; |
| 15 | #define _COLEMAK 1 | ||
| 16 | #define _DVORAK 2 | ||
| 17 | #define _FL 3 | ||
| 18 | #define _CL 4 | ||
| 19 | 13 | ||
| 20 | enum planck_keycodes { | 14 | enum planck_keycodes { |
| 21 | QWERTY = SAFE_RANGE, | 15 | QWERTY = SAFE_RANGE, |
| @@ -27,6 +21,7 @@ enum planck_keycodes { | |||
| 27 | #define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)) | 21 | #define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)) |
| 28 | #define FN_CAPS LT(_FL, KC_CAPS) // Tap for Caps Lock, Hold for Function Layer | 22 | #define FN_CAPS LT(_FL, KC_CAPS) // Tap for Caps Lock, Hold for Function Layer |
| 29 | 23 | ||
| 24 | // clang-format off | ||
| 30 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 25 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 31 | /* Keymap _QWERTY: Base Layer (Default Layer) | 26 | /* Keymap _QWERTY: Base Layer (Default Layer) |
| 32 | * ,-----------------------------------------------------------. ,---. | 27 | * ,-----------------------------------------------------------. ,---. |
| @@ -107,33 +102,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 107 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAI, \ | 102 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAI, \ |
| 108 | _______, _______, _______, _______, RGB_MOD, RGB_MOD, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_HUI), | 103 | _______, _______, _______, _______, RGB_MOD, RGB_MOD, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_HUI), |
| 109 | }; | 104 | }; |
| 110 | 105 | // clang-format on | |
| 111 | |||
| 112 | void persistent_default_layer_set(uint16_t default_layer) { | ||
| 113 | eeconfig_update_default_layer(default_layer); | ||
| 114 | default_layer_set(default_layer); | ||
| 115 | } | ||
| 116 | 106 | ||
| 117 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 107 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 118 | switch (keycode) { | 108 | if (record->event.pressed) { |
| 119 | case QWERTY: | 109 | switch (keycode) { |
| 120 | if (record->event.pressed) { | 110 | case QWERTY: |
| 121 | persistent_default_layer_set(1UL<<_QWERTY); | 111 | set_single_persistent_default_layer(_QWERTY); |
| 122 | } | 112 | return false; |
| 123 | return false; | 113 | case DVORAK: |
| 124 | break; | 114 | set_single_persistent_default_layer(_DVORAK); |
| 125 | case COLEMAK: | 115 | return false; |
| 126 | if (record->event.pressed) { | 116 | case COLEMAK: |
| 127 | persistent_default_layer_set(1UL<<_COLEMAK); | 117 | set_single_persistent_default_layer(_COLEMAK); |
| 128 | } | 118 | return false; |
| 129 | return false; | 119 | } |
| 130 | break; | 120 | } |
| 131 | case DVORAK: | 121 | return true; |
| 132 | if (record->event.pressed) { | ||
| 133 | persistent_default_layer_set(1UL<<_DVORAK); | ||
| 134 | } | ||
| 135 | return false; | ||
| 136 | break; | ||
| 137 | } | ||
| 138 | return true; | ||
| 139 | } | 122 | } |
diff --git a/layouts/community/66_ansi/xyverz/rules.mk b/layouts/community/66_ansi/xyverz/rules.mk new file mode 100644 index 000000000..164232f33 --- /dev/null +++ b/layouts/community/66_ansi/xyverz/rules.mk | |||
| @@ -0,0 +1 @@ | |||
| RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. \ No newline at end of file | |||
diff --git a/layouts/community/ortho_4x12/xyverz/keymap.c b/layouts/community/ortho_4x12/xyverz/keymap.c index 681dafacd..a21c143f0 100644 --- a/layouts/community/ortho_4x12/xyverz/keymap.c +++ b/layouts/community/ortho_4x12/xyverz/keymap.c | |||
| @@ -1,34 +1,15 @@ | |||
| 1 | #include QMK_KEYBOARD_H | 1 | #include QMK_KEYBOARD_H |
| 2 | #include "action_layer.h" | ||
| 3 | #include "eeconfig.h" | ||
| 4 | 2 | ||
| 5 | extern keymap_config_t keymap_config; | 3 | enum layer_names { _QWERTY, _COLEMAK, _DVORAK, _LOWER, _RAISE, _ADJUST }; |
| 6 | 4 | ||
| 7 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | 5 | enum custom_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK, LOWER, RAISE, ADJUST }; |
| 8 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||
| 9 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||
| 10 | // entirely and just use numbers. | ||
| 11 | #define _QWERTY 0 | ||
| 12 | #define _COLEMAK 1 | ||
| 13 | #define _DVORAK 2 | ||
| 14 | #define _LOWER 3 | ||
| 15 | #define _RAISE 4 | ||
| 16 | #define _ADJUST 16 | ||
| 17 | |||
| 18 | enum custom_keycodes { | ||
| 19 | QWERTY = SAFE_RANGE, | ||
| 20 | COLEMAK, | ||
| 21 | DVORAK, | ||
| 22 | LOWER, | ||
| 23 | RAISE, | ||
| 24 | ADJUST | ||
| 25 | }; | ||
| 26 | 6 | ||
| 27 | // Aliases to keep the keymap tidy | 7 | // Aliases to keep the keymap tidy |
| 28 | #define GUIBSPC GUI_T(KC_BSPC) // GUI when held, BSPC when tapped. | 8 | #define GUIBSPC GUI_T(KC_BSPC) // GUI when held, BSPC when tapped. |
| 29 | #define RGB_SWR RGB_M_SW // Swirl Animation alias | 9 | #define RGB_SWR RGB_M_SW // Swirl Animation alias |
| 30 | #define RGB_SNK RGB_M_SN // Snake Animation alias | 10 | #define RGB_SNK RGB_M_SN // Snake Animation alias |
| 31 | 11 | ||
| 12 | // clang-format off | ||
| 32 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 13 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 33 | 14 | ||
| 34 | /* Qwerty | 15 | /* Qwerty |
| @@ -47,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 47 | KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \ | 28 | KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \ |
| 48 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,\ | 29 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,\ |
| 49 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \ | 30 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \ |
| 50 | ), | 31 | ), |
| 51 | 32 | ||
| 52 | /* Colemak | 33 | /* Colemak |
| 53 | * ,-----------------------------------------------------------------------------------. | 34 | * ,-----------------------------------------------------------------------------------. |
| @@ -65,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 65 | KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, \ | 46 | KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, \ |
| 66 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ | 47 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ |
| 67 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \ | 48 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \ |
| 68 | ), | 49 | ), |
| 69 | 50 | ||
| 70 | /* Dvorak | 51 | /* Dvorak |
| 71 | * ,-----------------------------------------------------------------------------------. | 52 | * ,-----------------------------------------------------------------------------------. |
| @@ -83,7 +64,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 83 | KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, \ | 64 | KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, \ |
| 84 | KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, \ | 65 | KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, \ |
| 85 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \ | 66 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \ |
| 86 | ), | 67 | ), |
| 87 | 68 | ||
| 88 | /* Lower | 69 | /* Lower |
| 89 | * ,-----------------------------------------------------------------------------------. | 70 | * ,-----------------------------------------------------------------------------------. |
| @@ -101,7 +82,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 101 | KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, \ | 82 | KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, \ |
| 102 | _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, \ | 83 | _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, \ |
| 103 | BL_STEP, _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______ \ | 84 | BL_STEP, _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______ \ |
| 104 | ), | 85 | ), |
| 105 | 86 | ||
| 106 | /* Raise | 87 | /* Raise |
| 107 | * ,-----------------------------------------------------------------------------------. | 88 | * ,-----------------------------------------------------------------------------------. |
| @@ -119,7 +100,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 119 | KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, \ | 100 | KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, \ |
| 120 | _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, \ | 101 | _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, \ |
| 121 | BL_STEP, _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______ \ | 102 | BL_STEP, _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______ \ |
| 122 | ), | 103 | ), |
| 123 | 104 | ||
| 124 | /* Adjust (Lower + Raise) | 105 | /* Adjust (Lower + Raise) |
| 125 | * ,-----------------------------------------------------------------------------------. | 106 | * ,-----------------------------------------------------------------------------------. |
| @@ -137,77 +118,41 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 137 | _______, RESET, RGB_M_P, RGB_M_B, RGB_M_R, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, \ | 118 | _______, RESET, RGB_M_P, RGB_M_B, RGB_M_R, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, \ |
| 138 | RGB_TOG, RGB_MOD, RGB_SWR, RGB_M_K, RGB_M_G, RGB_HUI, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, \ | 119 | RGB_TOG, RGB_MOD, RGB_SWR, RGB_M_K, RGB_M_G, RGB_HUI, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, \ |
| 139 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ | 120 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ |
| 140 | ) | 121 | ) |
| 141 | |||
| 142 | |||
| 143 | }; | 122 | }; |
| 123 | // clang-format on | ||
| 144 | 124 | ||
| 145 | void persistent_default_layer_set(uint16_t default_layer) { | 125 | #ifdef AUDIO_ENABLE |
| 146 | eeconfig_update_default_layer(default_layer); | 126 | float tone_qwerty[][2] = SONG(QWERTY_SOUND); |
| 147 | default_layer_set(default_layer); | 127 | float tone_dvorak[][2] = SONG(DVORAK_SOUND); |
| 148 | } | 128 | float tone_colemak[][2] = SONG(COLEMAK_SOUND); |
| 129 | #endif | ||
| 149 | 130 | ||
| 150 | void matrix_init_user(void) { | 131 | void matrix_init_user(void) { |
| 151 | #ifdef BOOTLOADER_CATERINA | 132 | #ifdef BOOTLOADER_CATERINA |
| 152 | // This will disable the red LEDs on the ProMicros | 133 | // This will disable the red LEDs on the ProMicros |
| 153 | DDRD &= ~(1<<5); | 134 | setPinInput(D5); |
| 154 | PORTD &= ~(1<<5); | 135 | writePinLow(D5); |
| 155 | DDRB &= ~(1<<0); | 136 | setPinInput(B0); |
| 156 | PORTB &= ~(1<<0); | 137 | writePinLow(B0); |
| 157 | #endif | 138 | #endif |
| 158 | }; | 139 | }; |
| 159 | 140 | ||
| 141 | layer_state_t layer_state_set_user(layer_state_t state) { return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); }; | ||
| 142 | |||
| 160 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 143 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 161 | switch (keycode) { | 144 | if (record->event.pressed) { |
| 162 | case QWERTY: | 145 | switch (keycode) { |
| 163 | if (record->event.pressed) { | 146 | case QWERTY: |
| 164 | persistent_default_layer_set(1UL<<_QWERTY); | 147 | set_single_persistent_default_layer(_QWERTY); |
| 165 | } | 148 | return false; |
| 166 | return false; | 149 | case COLEMAK: |
| 167 | break; | 150 | set_single_persistent_default_layer(_COLEMAK); |
| 168 | case COLEMAK: | 151 | return false; |
| 169 | if (record->event.pressed) { | 152 | case DVORAK: |
| 170 | persistent_default_layer_set(1UL<<_COLEMAK); | 153 | set_single_persistent_default_layer(_DVORAK); |
| 171 | } | 154 | return false; |
| 172 | return false; | 155 | } |
| 173 | break; | 156 | } |
| 174 | case DVORAK: | 157 | return true; |
| 175 | if (record->event.pressed) { | 158 | } \ No newline at end of file |
| 176 | persistent_default_layer_set(1UL<<_DVORAK); | ||
| 177 | } | ||
| 178 | return false; | ||
| 179 | break; | ||
| 180 | case LOWER: | ||
| 181 | if (record->event.pressed) { | ||
| 182 | layer_on(_LOWER); | ||
| 183 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 184 | } else { | ||
| 185 | layer_off(_LOWER); | ||
| 186 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 187 | } | ||
| 188 | return false; | ||
| 189 | break; | ||
| 190 | case RAISE: | ||
| 191 | if (record->event.pressed) { | ||
| 192 | layer_on(_RAISE); | ||
| 193 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 194 | } else { | ||
| 195 | layer_off(_RAISE); | ||
| 196 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 197 | } | ||
| 198 | return false; | ||
| 199 | break; | ||
| 200 | /* case BACKLIT: | ||
| 201 | if (record->event.pressed) { | ||
| 202 | register_code(KC_RSFT); | ||
| 203 | #ifdef BACKLIGHT_ENABLE | ||
| 204 | backlight_step(); | ||
| 205 | #endif | ||
| 206 | } else { | ||
| 207 | unregister_code(KC_RSFT); | ||
| 208 | } | ||
| 209 | return false; | ||
| 210 | break; */ | ||
| 211 | } | ||
| 212 | return true; | ||
| 213 | } | ||
diff --git a/layouts/community/ortho_4x12/xyverz/readme.md b/layouts/community/ortho_4x12/xyverz/readme.md index 1ec10a0da..d6614d956 100644 --- a/layouts/community/ortho_4x12/xyverz/readme.md +++ b/layouts/community/ortho_4x12/xyverz/readme.md | |||
| @@ -8,6 +8,7 @@ This revision includes this documentation and introduction of the individual RGB | |||
| 8 | 8 | ||
| 9 | ## Still to do: | 9 | ## Still to do: |
| 10 | 10 | ||
| 11 | * Update layout files to match current standards. | ||
| 11 | * Enjoy this revision; figure out new things later. | 12 | * Enjoy this revision; figure out new things later. |
| 12 | 13 | ||
| 13 | ### Qwerty layer | 14 | ### Qwerty layer |
diff --git a/layouts/community/ortho_5x12/xyverz/keymap.c b/layouts/community/ortho_5x12/xyverz/keymap.c index bbf1d7bb0..2cca237bb 100644 --- a/layouts/community/ortho_5x12/xyverz/keymap.c +++ b/layouts/community/ortho_5x12/xyverz/keymap.c | |||
| @@ -1,34 +1,15 @@ | |||
| 1 | #include QMK_KEYBOARD_H | 1 | #include QMK_KEYBOARD_H |
| 2 | #include "action_layer.h" | ||
| 3 | #include "eeconfig.h" | ||
| 4 | 2 | ||
| 5 | extern keymap_config_t keymap_config; | 3 | enum layer_names { _QWERTY, _COLEMAK, _DVORAK, _LOWER, _RAISE, _ADJUST }; |
| 6 | 4 | ||
| 7 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | 5 | enum custom_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK, LOWER, RAISE, ADJUST }; |
| 8 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||
| 9 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||
| 10 | // entirely and just use numbers. | ||
| 11 | #define _QWERTY 0 | ||
| 12 | #define _COLEMAK 1 | ||
| 13 | #define _DVORAK 2 | ||
| 14 | #define _LOWER 3 | ||
| 15 | #define _RAISE 4 | ||
| 16 | #define _ADJUST 16 | ||
| 17 | |||
| 18 | enum custom_keycodes { | ||
| 19 | QWERTY = SAFE_RANGE, | ||
| 20 | COLEMAK, | ||
| 21 | DVORAK, | ||
| 22 | LOWER, | ||
| 23 | RAISE, | ||
| 24 | ADJUST, | ||
| 25 | }; | ||
| 26 | 6 | ||
| 27 | // Aliases to keep the keymap tidy | 7 | // Aliases to keep the keymap tidy |
| 28 | #define GUIBSPC GUI_T(KC_BSPC) // GUI when held, BSPC when tapped. | 8 | #define GUIBSPC GUI_T(KC_BSPC) // GUI when held, BSPC when tapped. |
| 29 | #define RGB_SWR RGB_M_SW // Swirl Animation alias | 9 | #define RGB_SWR RGB_M_SW // Swirl Animation alias |
| 30 | #define RGB_SNK RGB_M_SN // Snake Animation alias | 10 | #define RGB_SNK RGB_M_SN // Snake Animation alias |
| 31 | 11 | ||
| 12 | // clang-format off | ||
| 32 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 13 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 33 | 14 | ||
| 34 | /* Qwerty | 15 | /* Qwerty |
| @@ -50,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 50 | KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \ | 31 | KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \ |
| 51 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ | 32 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ |
| 52 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \ | 33 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \ |
| 53 | ), | 34 | ), |
| 54 | 35 | ||
| 55 | /* Colemak | 36 | /* Colemak |
| 56 | * ,-----------------------------------------------------------------------------------. | 37 | * ,-----------------------------------------------------------------------------------. |
| @@ -71,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 71 | KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, \ | 52 | KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, \ |
| 72 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ | 53 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ |
| 73 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \ | 54 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \ |
| 74 | ), | 55 | ), |
| 75 | 56 | ||
| 76 | /* Dvorak | 57 | /* Dvorak |
| 77 | * ,-----------------------------------------------------------------------------------. | 58 | * ,-----------------------------------------------------------------------------------. |
| @@ -92,7 +73,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 92 | KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, \ | 73 | KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, \ |
| 93 | KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, \ | 74 | KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, \ |
| 94 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \ | 75 | KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \ |
| 95 | ), | 76 | ), |
| 96 | 77 | ||
| 97 | /* Lower | 78 | /* Lower |
| 98 | * ,-----------------------------------------------------------------------------------. | 79 | * ,-----------------------------------------------------------------------------------. |
| @@ -113,7 +94,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 113 | KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, KC_PLUS, KC_LCBR, KC_RCBR, _______, \ | 94 | KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, KC_PLUS, KC_LCBR, KC_RCBR, _______, \ |
| 114 | _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, \ | 95 | _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, \ |
| 115 | BL_STEP, _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______ \ | 96 | BL_STEP, _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______ \ |
| 116 | ), | 97 | ), |
| 117 | 98 | ||
| 118 | /* Raise | 99 | /* Raise |
| 119 | * ,-----------------------------------------------------------------------------------. | 100 | * ,-----------------------------------------------------------------------------------. |
| @@ -134,7 +115,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 134 | KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, KC_EQL, KC_LBRC, KC_RBRC, _______, \ | 115 | KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, KC_EQL, KC_LBRC, KC_RBRC, _______, \ |
| 135 | _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, \ | 116 | _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, \ |
| 136 | BL_STEP, _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______ \ | 117 | BL_STEP, _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______ \ |
| 137 | ), | 118 | ), |
| 138 | 119 | ||
| 139 | /* Adjust (Lower + Raise) | 120 | /* Adjust (Lower + Raise) |
| 140 | * ,-----------------------------------------------------------------------------------. | 121 | * ,-----------------------------------------------------------------------------------. |
| @@ -155,92 +136,42 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 155 | _______, _______, RGB_M_P, RGB_M_B, RGB_M_R, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, \ | 136 | _______, _______, RGB_M_P, RGB_M_B, RGB_M_R, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, \ |
| 156 | RGB_TOG, RGB_MOD, RGB_SWR, RGB_M_K, RGB_M_G, RGB_HUI, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, \ | 137 | RGB_TOG, RGB_MOD, RGB_SWR, RGB_M_K, RGB_M_G, RGB_HUI, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, \ |
| 157 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ | 138 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ |
| 158 | ) | 139 | ) |
| 159 | |||
| 160 | |||
| 161 | }; | 140 | }; |
| 162 | 141 | ||
| 142 | // clang-format on | ||
| 143 | |||
| 163 | #ifdef AUDIO_ENABLE | 144 | #ifdef AUDIO_ENABLE |
| 164 | float tone_qwerty[][2] = SONG(QWERTY_SOUND); | 145 | float tone_qwerty[][2] = SONG(QWERTY_SOUND); |
| 165 | float tone_dvorak[][2] = SONG(DVORAK_SOUND); | 146 | float tone_dvorak[][2] = SONG(DVORAK_SOUND); |
| 166 | float tone_colemak[][2] = SONG(COLEMAK_SOUND); | 147 | float tone_colemak[][2] = SONG(COLEMAK_SOUND); |
| 167 | #endif | 148 | #endif |
| 168 | 149 | ||
| 169 | void persistent_default_layer_set(uint16_t default_layer) { | ||
| 170 | eeconfig_update_default_layer(default_layer); | ||
| 171 | default_layer_set(default_layer); | ||
| 172 | } | ||
| 173 | |||
| 174 | void matrix_init_user(void) { | 150 | void matrix_init_user(void) { |
| 175 | #ifdef BOOTLOADER_CATERINA | 151 | #ifdef BOOTLOADER_CATERINA |
| 176 | // This will disable the red LEDs on the ProMicros | 152 | // This will disable the red LEDs on the ProMicros |
| 177 | DDRD &= ~(1<<5); | 153 | setPinInput(D5); |
| 178 | PORTD &= ~(1<<5); | 154 | writePinLow(D5); |
| 179 | DDRB &= ~(1<<0); | 155 | setPinInput(B0); |
| 180 | PORTB &= ~(1<<0); | 156 | writePinLow(B0); |
| 181 | #endif | 157 | #endif |
| 182 | }; | 158 | }; |
| 183 | 159 | ||
| 160 | layer_state_t layer_state_set_user(layer_state_t state) { return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); }; | ||
| 161 | |||
| 184 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 162 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 185 | switch (keycode) { | 163 | if (record->event.pressed) { |
| 186 | case QWERTY: | 164 | switch (keycode) { |
| 187 | if (record->event.pressed) { | 165 | case QWERTY: |
| 188 | #ifdef AUDIO_ENABLE | 166 | set_single_persistent_default_layer(_QWERTY); |
| 189 | PLAY_NOTE_ARRAY(tone_qwerty, false, 0); | 167 | return false; |
| 190 | #endif | 168 | case COLEMAK: |
| 191 | persistent_default_layer_set(1UL<<_QWERTY); | 169 | set_single_persistent_default_layer(_COLEMAK); |
| 192 | } | 170 | return false; |
| 193 | return false; | 171 | case DVORAK: |
| 194 | break; | 172 | set_single_persistent_default_layer(_DVORAK); |
| 195 | case COLEMAK: | 173 | return false; |
| 196 | if (record->event.pressed) { | 174 | } |
| 197 | #ifdef AUDIO_ENABLE | 175 | } |
| 198 | PLAY_NOTE_ARRAY(tone_colemak, false, 0); | 176 | return true; |
| 199 | #endif | 177 | } \ No newline at end of file |
| 200 | persistent_default_layer_set(1UL<<_COLEMAK); | ||
| 201 | } | ||
| 202 | return false; | ||
| 203 | break; | ||
| 204 | case DVORAK: | ||
| 205 | if (record->event.pressed) { | ||
| 206 | #ifdef AUDIO_ENABLE | ||
| 207 | PLAY_NOTE_ARRAY(tone_dvorak, false, 0); | ||
| 208 | #endif | ||
| 209 | persistent_default_layer_set(1UL<<_DVORAK); | ||
| 210 | } | ||
| 211 | return false; | ||
| 212 | break; | ||
| 213 | case LOWER: | ||
| 214 | if (record->event.pressed) { | ||
| 215 | layer_on(_LOWER); | ||
| 216 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 217 | } else { | ||
| 218 | layer_off(_LOWER); | ||
| 219 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 220 | } | ||
| 221 | return false; | ||
| 222 | break; | ||
| 223 | case RAISE: | ||
| 224 | if (record->event.pressed) { | ||
| 225 | layer_on(_RAISE); | ||
| 226 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 227 | } else { | ||
| 228 | layer_off(_RAISE); | ||
| 229 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
| 230 | } | ||
| 231 | return false; | ||
| 232 | break; | ||
| 233 | /* case BACKLIT: | ||
| 234 | if (record->event.pressed) { | ||
| 235 | register_code(KC_RSFT); | ||
| 236 | #ifdef BACKLIGHT_ENABLE | ||
| 237 | backlight_step(); | ||
| 238 | #endif | ||
| 239 | } else { | ||
| 240 | unregister_code(KC_RSFT); | ||
| 241 | } | ||
| 242 | return false; | ||
| 243 | break; */ | ||
| 244 | } | ||
| 245 | return true; | ||
| 246 | } | ||
diff --git a/keyboards/phantom/keymaps/xyverz/keymap.c b/layouts/community/tkl_ansi/xyverz/keymap.c index 07a743c16..1f79f87d1 100644 --- a/keyboards/phantom/keymaps/xyverz/keymap.c +++ b/layouts/community/tkl_ansi/xyverz/keymap.c | |||
| @@ -1,25 +1,15 @@ | |||
| 1 | #include QMK_KEYBOARD_H | 1 | #include QMK_KEYBOARD_H |
| 2 | 2 | ||
| 3 | extern keymap_config_t keymap_config; | 3 | enum layer_names { |
| 4 | 4 | _QW, | |
| 5 | 5 | _DV, | |
| 6 | // Used for SHIFT_ESC | 6 | _CM, |
| 7 | #define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)) | 7 | _FL, |
| 8 | 8 | }; | |
| 9 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | ||
| 10 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||
| 11 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||
| 12 | // entirely and just use numbers. | ||
| 13 | #define _QW 0 | ||
| 14 | #define _DV 1 | ||
| 15 | #define _CM 2 | ||
| 16 | #define _FL 3 | ||
| 17 | 9 | ||
| 18 | // Macro name shortcuts | 10 | enum planck_keycodes { DVORAK = SAFE_RANGE, QWERTY, COLEMAK }; |
| 19 | #define QWERTY M(_QW) | ||
| 20 | #define DVORAK M(_DV) | ||
| 21 | #define COLEMAK M(_CM) | ||
| 22 | 11 | ||
| 12 | // clang-format off | ||
| 23 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 13 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 24 | 14 | ||
| 25 | [_QW] = LAYOUT_tkl_ansi( /* Layer 0: Qwerty */ \ | 15 | [_QW] = LAYOUT_tkl_ansi( /* Layer 0: Qwerty */ \ |
| @@ -59,34 +49,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 59 | ), | 49 | ), |
| 60 | 50 | ||
| 61 | }; | 51 | }; |
| 52 | // clang-format on | ||
| 62 | 53 | ||
| 63 | enum function_id { | 54 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 64 | SHIFT_ESC, | 55 | if (record->event.pressed) { |
| 65 | }; | 56 | switch (keycode) { |
| 66 | 57 | case DVORAK: | |
| 67 | void persistent_default_layer_set(uint16_t default_layer) { | 58 | set_single_persistent_default_layer(_DV); |
| 68 | eeconfig_update_default_layer(default_layer); | 59 | return false; |
| 69 | default_layer_set(default_layer); | 60 | case QWERTY: |
| 70 | } | 61 | set_single_persistent_default_layer(_QW); |
| 71 | 62 | return false; | |
| 72 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | 63 | case COLEMAK: |
| 73 | { | 64 | set_single_persistent_default_layer(_CM); |
| 74 | switch(id) { | 65 | return false; |
| 75 | case _DV: | 66 | } |
| 76 | if (record->event.pressed) { | 67 | } |
| 77 | persistent_default_layer_set(1UL<<_DV); | 68 | return true; |
| 78 | } | 69 | } \ No newline at end of file |
| 79 | break; | ||
| 80 | case _QW: | ||
| 81 | if (record->event.pressed) { | ||
| 82 | persistent_default_layer_set(1UL<<_QW); | ||
| 83 | } | ||
| 84 | break; | ||
| 85 | case _CM: | ||
| 86 | if (record->event.pressed) { | ||
| 87 | persistent_default_layer_set(1UL<<_CM); | ||
| 88 | } | ||
| 89 | break; | ||
| 90 | } | ||
| 91 | return MACRO_NONE; | ||
| 92 | }; | ||
diff --git a/layouts/community/tkl_ansi/xyverz/readme.md b/layouts/community/tkl_ansi/xyverz/readme.md new file mode 100644 index 000000000..b67b1385d --- /dev/null +++ b/layouts/community/tkl_ansi/xyverz/readme.md | |||
| @@ -0,0 +1 @@ | |||
| 2019-10-16 Updated to bring keymap up to current. | |||
