From 40e903685446d799c5d7c388400c33be0455e5a4 Mon Sep 17 00:00:00 2001 From: Ian Sterling Date: Thu, 27 Jun 2019 22:24:38 -0700 Subject: [PATCH] Code updates to my keymaps Updating the code for my Iris, Atreus62, and Atreus keymaps. --- keyboards/atreus/keymaps/xyverz/keymap.c | 78 ++++------- keyboards/atreus62/keymaps/xyverz/keymap.c | 121 +++++++--------- keyboards/atreus62/keymaps/xyverz/readme.md | 41 ++++-- keyboards/keebio/iris/keymaps/xyverz/keymap.c | 129 ++++++------------ 4 files changed, 152 insertions(+), 217 deletions(-) diff --git a/keyboards/atreus/keymaps/xyverz/keymap.c b/keyboards/atreus/keymaps/xyverz/keymap.c index e93c9ca06e5..15e35dd0e71 100644 --- a/keyboards/atreus/keymaps/xyverz/keymap.c +++ b/keyboards/atreus/keymaps/xyverz/keymap.c @@ -10,13 +10,16 @@ extern keymap_config_t keymap_config; // The underscores don't mean anything - you can have a layer called STUFF or any other name. // Layer names don't all need to be of the same length, obviously, and you can also skip them // entirely and just use numbers. -#define _DVORAK 0 -#define _QWERTY 1 -#define _COLEMAK 2 -#define _DVORMAC 3 -#define _LOWER 4 -#define _RAISE 5 -#define _ADJUST 16 + +enum layer_names { + _DVORAK, + _QWERTY, + _COLEMAK, + _DVORMAC, + _LOWER, + _RAISE, + _ADJUST +}; enum planck_keycodes { DVORAK = SAFE_RANGE, @@ -25,7 +28,7 @@ enum planck_keycodes { DVORMAC, LOWER, RAISE, - BACKLIT + ADJUST }; // Adding macros to make the keymaps below much easier to read. @@ -35,6 +38,9 @@ enum planck_keycodes { #define ALTENT ALT_T(KC_ENT) #define ESCTRL CTL_T(KC_ESC) #define TABALT ALT_T(KC_TAB) +#define ADJUST MO(_ADJUST) +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Dvorak Layer @@ -157,57 +163,31 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), }; -void persistent_default_layer_set(uint16_t default_layer) { - eeconfig_update_default_layer(default_layer); - default_layer_set(default_layer); +uint32_t layer_state_set_user(uint32_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); } - bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { - case QWERTY: - if (record->event.pressed) { - persistent_default_layer_set(1UL<<_QWERTY); - } - return false; - break; - case COLEMAK: - if (record->event.pressed) { - persistent_default_layer_set(1UL<<_COLEMAK); - } - return false; - break; case DVORAK: if (record->event.pressed) { - persistent_default_layer_set(1UL<<_DVORAK); + set_single_persistent_default_layer(_DVORAK); + } + return false; + case COLEMAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_COLEMAK); + } + return false; + case QWERTY: + if (record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); } return false; - break; case DVORMAC: if (record->event.pressed) { - persistent_default_layer_set(1UL<<_DVORMAC); + set_single_persistent_default_layer(_DVORMAC); } return false; - break; - case LOWER: - if (record->event.pressed) { - layer_on(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; - case RAISE: - if (record->event.pressed) { - layer_on(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; } return true; -}; +} \ No newline at end of file diff --git a/keyboards/atreus62/keymaps/xyverz/keymap.c b/keyboards/atreus62/keymaps/xyverz/keymap.c index 09647c9a440..22f20050406 100644 --- a/keyboards/atreus62/keymaps/xyverz/keymap.c +++ b/keyboards/atreus62/keymaps/xyverz/keymap.c @@ -27,7 +27,8 @@ CHANGELOG: position on the RAISE and LOWER layers. Added code to turn off the Pro Micro LEDs after flashing. 0.5 - Converted keymap to LAYOUT standard. - 0.6 - Swapped ESC and GRV in all layers + 0.6 - Swapped ESC and GRV in all layers. + 0.7 - Brought code up to current standards. TODO: @@ -41,18 +42,16 @@ TODO: // This is the canonical layout file for the Quantum project. If you want to add another keyboard, #include QMK_KEYBOARD_H -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -// Layer names don't all need to be of the same length, obviously, and you can also skip them -// entirely and just use numbers. -#define _DVORAK 0 -#define _QWERTY 1 -#define _COLEMAK 2 -#define _WOW 3 -#define _DESTINY 4 -#define _LOWER 5 -#define _RAISE 6 -#define _ADJUST 16 +enum layer_names { + _DVORAK, + _QWERTY, + _COLEMAK, + _WOW, + _DESTINY, + _LOWER, + _RAISE, + _ADJUST +}; enum atreus52_keycodes { DVORAK = SAFE_RANGE, @@ -61,7 +60,8 @@ enum atreus52_keycodes { WOW, DESTINY, LOWER, - RAISE + RAISE, + ADJUST }; // Aliases to make the keymap clearer. @@ -135,70 +135,43 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { void matrix_init_user(void) { #ifdef BOOTLOADER_CATERINA // This will disable the red LEDs on the ProMicros - DDRD &= ~(1<<5); - PORTD &= ~(1<<5); - DDRB &= ~(1<<0); - PORTB &= ~(1<<0); + setPinOutput(D5); + writePinLow(D5); + setPinOutput(B0); + writePinLow(B0); #endif }; -void persistent_default_layer_set(uint16_t default_layer) { - eeconfig_update_default_layer(default_layer); - default_layer_set(default_layer); +uint32_t layer_state_set_user(uint32_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); } - bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { - case QWERTY: - if (record->event.pressed) { - persistent_default_layer_set(1UL<<_QWERTY); - } - return false; - break; - case COLEMAK: - if (record->event.pressed) { - persistent_default_layer_set(1UL<<_COLEMAK); - } - return false; - break; - case DVORAK: - if (record->event.pressed) { - persistent_default_layer_set(1UL<<_DVORAK); - } - return false; - break; - case WOW: - if (record->event.pressed) { - persistent_default_layer_set(1UL<<_WOW); - } - return false; - break; - case DESTINY: - if (record->event.pressed) { - persistent_default_layer_set(1UL<<_DESTINY); - } - return false; - break; - case LOWER: - if (record->event.pressed) { - layer_on(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; - case RAISE: - if (record->event.pressed) { - layer_on(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; + case DVORAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_DVORAK); } - return true; -}; + return false; + case COLEMAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_COLEMAK); + } + return false; + case QWERTY: + if (record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); + } + return false; + case WOW: + if (record->event.pressed) { + set_single_persistent_default_layer(_WOW); + } + return false; + case DESTINY: + if (record->event.pressed) { + set_single_persistent_default_layer(_DESTINY); + } + return false; + } + return true; +} \ No newline at end of file diff --git a/keyboards/atreus62/keymaps/xyverz/readme.md b/keyboards/atreus62/keymaps/xyverz/readme.md index cf00b65e3a7..f91a87da4fe 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 * Moved location of Escape key to Caps Lock position. Moved Caps Lock to same position on Raise/Lower Layers. * Put Tilde/Grave in the upper-left corner * Added code to turn off the red LEDs on the Pro Micro after flashing. They were annoying me. +### 0.5 + * Converted keymap to LAYOUT standard. +### 0.6 + * Swapped ESC and GRV in all layers. +### 0.7 + * Brought code up to new standards (as of 27 June 2019). + * Updated this readme file. ### TODO: @@ -34,11 +41,11 @@ The bottom row is fairly Kinesis-ish since the Contour and Advantage keyboards h ### Layer 0: Dvorak layer ,-----------------------------------------. ,-----------------------------------------. - | Grv | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | \ | + | Esc | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | \ | |------+------+------+------+------+------| |------+------+------+------+------+------| | Tab | ' | , | . | P | Y | | F | G | C | R | L | / | |------+------+------+------+------+------| |------+------+------+------+------+------| - | Esc | A | O | E | U | I | | D | H | T | N | S | - | + | Grv | A | O | E | U | I | | D | H | T | N | S | - | |------+------+------+------+------+------|------.,------|------+------+------+------+------+------| | Shft | ; | Q | J | K | X | Gui ||Enter | B | M | W | V | Z | Shft | |------+------+------+------+------+------| || |------+------+------+------+------+------| @@ -48,11 +55,11 @@ The bottom row is fairly Kinesis-ish since the Contour and Advantage keyboards h ### Layer 1: QWERTY layer ,-----------------------------------------. ,-----------------------------------------. - | Grv | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - | + | Esc | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - | |------+------+------+------+------+------| |------+------+------+------+------+------| | Tab | Q | W | E | R | T | | Y | U | I | O | P | Del | |------+------+------+------+------+------| |------+------+------+------+------+------| - | Esc | A | S | D | F | G | | D | H | T | N | S | ' | + | Grv | A | S | D | F | G | | D | H | T | N | S | ' | |------+------+------+------+------+------|------.,------|------+------+------+------+------+------| | Shft | Z | X | C | V | B | Gui ||Enter | N | M | , | . | / | Shft | |------+------+------+------+------+------| || |------+------+------+------+------+------| @@ -62,11 +69,11 @@ The bottom row is fairly Kinesis-ish since the Contour and Advantage keyboards h ### Keymap 2: Colemak layer ,-----------------------------------------. ,-----------------------------------------. - | Grv | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - | + | Esc | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - | |------+------+------+------+------+------| |------+------+------+------+------+------| | Tab | Q | W | F | P | G | | J | U | U | Y | ; | Del | |------+------+------+------+------+------| |------+------+------+------+------+------| - | Esc | A | R | S | T | D | | H | N | E | I | O | ' | + | Grv | A | R | S | T | D | | H | N | E | I | O | ' | |------+------+------+------+------+------|------.,------|------+------+------+------+------+------| | Shft | Z | X | C | V | B | Gui ||Enter | K | M | , | . | / | Shft | |------+------+------+------+------+------| || |------+------+------+------+------+------| @@ -80,14 +87,28 @@ The bottom row is fairly Kinesis-ish since the Contour and Advantage keyboards h |------+------+------+------+------+------| |------+------+------+------+------+------| | Tab | ' | , | . | P | Y | | F | G | C | R | L | / | |------+------+------+------+------+------| |------+------+------+------+------+------| - | Caps | A | O | E | U | I | | D | H | T | N | S | - | + | Grv | A | O | E | U | I | | D | H | T | N | S | - | |------+------+------+------+------+------|------.,------|------+------+------+------+------+------| | Shft | ; | Q | J | K | X | Alt ||Ctrl/ | B | M | W | V | Z | Shft | |------+------+------+------+------+------| ||Enter |------+------+------+------+------+------| | Ctrl | Alt | Left | Rght | LOWER| BkSp |------'`------| Spc | RAISE| Up | Down | Gui | Ctrl | `-----------------------------------------' `-----------------------------------------' -### Keymap 4: LOWER layer +### Layer 4: Destiny layer + + ,-----------------------------------------. ,-----------------------------------------. + | Esc | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | \ | + |------+------+------+------+------+------| |------+------+------+------+------+------| + | Tab | ' | , | . | P | Y | | F | G | C | R | L | / | + |------+------+------+------+------+------| |------+------+------+------+------+------| + | Grv | A | O | E | U | I | | D | H | T | N | S | - | + |------+------+------+------+------+------|------.,------|------+------+------+------+------+------| + | Shft | ; | Q | J | K | X | Del ||Enter | B | M | W | V | Z | Shft | + |------+------+------+------+------+------| || |------+------+------+------+------+------| + | Ctrl | Alt | Left | Rght | LOWER| BkSp |------'`------| Spc | RAISE| Up | Down | Gui | Ctrl | + `-----------------------------------------' `-----------------------------------------' + +### Keymap 5: LOWER layer ,-----------------------------------------. ,-----------------------------------------. | 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 `-----------------------------------------' `-----------------------------------------' -### Keymap 5: RAISE layer +### Keymap 6: RAISE layer ,-----------------------------------------. ,-----------------------------------------. | 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 | | | Home | End | | Del |------'`------| Ins | | PgUp | PgDn | | | `-----------------------------------------' `-----------------------------------------' -### Keymap 6: ADJUST layer +### Keymap 7: ADJUST layer ,-----------------------------------------. ,-----------------------------------------. | | | | | | | | | | | | | | diff --git a/keyboards/keebio/iris/keymaps/xyverz/keymap.c b/keyboards/keebio/iris/keymaps/xyverz/keymap.c index 7d685fcd075..00bf1b3a47d 100644 --- a/keyboards/keebio/iris/keymaps/xyverz/keymap.c +++ b/keyboards/keebio/iris/keymaps/xyverz/keymap.c @@ -2,22 +2,25 @@ extern keymap_config_t keymap_config; -#define _QWERTY 0 -#define _COLEMAK 1 -#define _DVORAK 2 -#define _WOW 3 -#define _LOWER 4 -#define _RAISE 5 -#define _ADJUST 16 + +enum layer_names { + _DVORAK, + _QWERTY, + _COLEMAK, + _WOW, + _LOWER, + _RAISE, + _ADJUST +}; enum custom_keycodes { - QWERTY = SAFE_RANGE, + DVORAK = SAFE_RANGE, + QWERTY, COLEMAK, - DVORAK, WOW, LOWER, RAISE, - ADJUST, + ADJUST }; #define KC_____ KC_TRNS @@ -30,9 +33,21 @@ enum custom_keycodes { #define KC_DVRK DVORAK #define KC_WOW WOW #define KC_BSLT ALT_T(KC_BSPC) +#define ADJUST MO(_ADJUST) +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_DVORAK] = LAYOUT_kc ( + GRV , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,BSLS, + TAB ,QUOT,COMM,DOT , P , Y , F , G , C , R , L ,SLSH, + ESC , A , O , E , U , I , D , H , T , N , S ,MINS, + LSFT,SCLN, Q , J , K , X ,LOWR, RASE, B , M , W , V , Z ,RSFT, + LCTL,BSLT,LGUI, ENT ,SPC ,LALT + ), + [_QWERTY] = LAYOUT_kc ( EQL , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,MINS, TAB , Q , W , E , R , T , Y , U , I , O , P ,BSLS, @@ -49,14 +64,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LCTL,BSPC,LGUI, ENT ,SPC ,LALT ), - [_DVORAK] = LAYOUT_kc ( - GRV , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,BSLS, - TAB ,QUOT,COMM,DOT , P , Y , F , G , C , R , L ,SLSH, - ESC , A , O , E , U , I , D , H , T , N , S ,MINS, - LSFT,SCLN, Q , J , K , X ,LOWR, RASE, B , M , W , V , Z ,RSFT, - LCTL,BSLT,LGUI, ENT ,SPC ,LALT - ), - [_WOW] = LAYOUT_kc ( GRV , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,BSLS, TAB ,QUOT,COMM,DOT , P , Y , F , G , C , R , L ,SLSH, @@ -95,85 +102,39 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { float tone_qwerty[][2] = SONG(QWERTY_SOUND); #endif -void persistent_default_layer_set(uint16_t default_layer) { - eeconfig_update_default_layer(default_layer); - default_layer_set(default_layer); -} - void matrix_init_user(void) { // This will disable the red LEDs on the ProMicros - DDRD &= ~(1<<5); - PORTD &= ~(1<<5); - DDRB &= ~(1<<0); - PORTB &= ~(1<<0); + setPinOutput(D5); + writePinLow(D5); + setPinOutput(B0); + writePinLow(B0); }; +uint32_t layer_state_set_user(uint32_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { - case QWERTY: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - PLAY_SONG(tone_qwerty); - #endif - persistent_default_layer_set(1UL<<_QWERTY); - } - return false; - break; - case COLEMAK: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - PLAY_SONG(tone_colemak); - #endif - persistent_default_layer_set(1UL<<_COLEMAK); - } - return false; - break; case DVORAK: if (record->event.pressed) { - #ifdef AUDIO_ENABLE - PLAY_SONG(tone_dvorak); - #endif - persistent_default_layer_set(1UL<<_DVORAK); + set_single_persistent_default_layer(_DVORAK); + } + return false; + case COLEMAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_COLEMAK); + } + return false; + case QWERTY: + if (record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); } return false; - break; case WOW: if (record->event.pressed) { - #ifdef AUDIO_ENABLE - PLAY_SONG(tone_dvorak); - #endif - persistent_default_layer_set(1UL<<_WOW); + set_single_persistent_default_layer(_WOW); } return false; - break; - case LOWER: - if (record->event.pressed) { - layer_on(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; - case RAISE: - if (record->event.pressed) { - layer_on(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; - case ADJUST: - if (record->event.pressed) { - layer_on(_ADJUST); - } else { - layer_off(_ADJUST); - } - return false; - break; } return true; -} +} \ No newline at end of file