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 @@
// Preonic keyboards by Jack Humbert.
#include QMK_KEYBOARD_H
-#include "action_layer.h"
-#include "eeconfig.h"
extern keymap_config_t keymap_config;
@@ -12,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,
@@ -27,7 +28,7 @@ enum planck_keycodes {
DVORMAC,
LOWER,
RAISE,
- BACKLIT
+ ADJUST
};
// Adding macros to make the keymaps below much easier to read.
@@ -37,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
@@ -159,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);
+layer_state_t layer_state_set_user(layer_state_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/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.
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
and their normal keys when tapped. In addition, ESC and TAB are also set as Ctrl and ALT respectively when held,
-and Enter/ALT on the right thumb key for all layers.
+and Enter/ALT on the right thumb key for all alpha layers.
I've enabled persistent keymaps for Qwerty, Dvorak and Colemak layers, similar to the default Planck layouts.
@@ -44,7 +44,7 @@ Control.
| Esc | Tab | GUI | LOWER| BkSp |------'`------| Spc | RAISE| - | ' | \ |
`----------------------------------' `----------------------------------'
-### Keymap 2: Colemak layer
+### Layer 2: Colemak layer
,----------------------------------. ,----------------------------------.
| Q | W | F | P | G | | J | L | U | Y | L |
@@ -56,7 +56,7 @@ Control.
| Esc | Tab | GUI | LOWER| BkSp |------'`------| Spc | RAISE| - | ' | \ |
`----------------------------------' `----------------------------------'
-### Keymap 3: Dvorak for Mac layout
+### Layer 3: Dvorak for Mac layer
,----------------------------------. ,----------------------------------.
| ' | , | . | P | Y | | F | G | C | R | L |
@@ -68,7 +68,7 @@ Control.
| Esc | Tab | GUI | LOWER| BkSp |------'`------| Spc | RAISE| - | / | \ |
`----------------------------------' `----------------------------------'
-### Keymap 4: LOWER layer
+### Layer 4: LOWER layer
,----------------------------------. ,----------------------------------.
| ! | @ | # | $ | % | | ^ | & | * | ( | ) |
@@ -81,7 +81,7 @@ Control.
`----------------------------------' `----------------------------------'
-### Keymap 5: RAISE layer
+### Layer 5: RAISE layer
,----------------------------------. ,----------------------------------.
| 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 |
@@ -93,7 +93,7 @@ Control.
| ` | | | | Del |------'`------| Ins | | | | |
`----------------------------------' `----------------------------------'
-### Keymap 6: ADJUST layer
+### Layer 6: ADJUST layer
,----------------------------------. ,----------------------------------.
| 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 @@
CHANGELOG:
0.1 - Initial commit. Based off of Profet's default keymap.
- 0.2 - Converted to a more Planck/Preonic keymap style file with
+ 0.2 - Converted to a more Planck/Preonic keymap style file with
persistent layers enabled. Renamed layers to reflect OLKB maps.
Added a TODO list.
- 0.3 - Moved location of media & volume keys. Added Print Screen,
+ 0.3 - Moved location of media & volume keys. Added Print Screen,
Scroll Lock and Pause keys. Added a WOW gaming layer that
changes the location of Ctrl & Alt to the thumb keys. Added
readme.
- 0.4 - After more useage, I realized that the ESC key was in the way
+ 0.4 - After more useage, I realized that the ESC key was in the way
of my muscle memory (gee, thanks, Planck!) so I moved it to
the normal Caps Lock position, and moved Caps Lock to the same
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.7 - Brought code up to current standards.
TODO:
@@ -39,66 +41,59 @@ TODO:
// this is the style you want to emulate.
// This is the canonical layout file for the Quantum project. If you want to add another keyboard,
#include QMK_KEYBOARD_H
-#include "action_layer.h"
-#include "eeconfig.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 _LOWER 4
-#define _RAISE 5
-#define _ADJUST 16
+enum layer_names { _DVORAK, _QWERTY, _COLEMAK, _WOW, _DESTINY, _LOWER, _RAISE, _ADJUST };
-enum atreus52_keycodes {
- DVORAK = SAFE_RANGE,
- QWERTY,
- COLEMAK,
- WOW,
- LOWER,
- RAISE
-};
+enum atreus52_keycodes { DVORAK = SAFE_RANGE, QWERTY, COLEMAK, WOW, DESTINY, LOWER, RAISE, ADJUST };
// Aliases to make the keymap clearer.
#define CTL_ENT CTL_T(KC_ENT)
+#define LOWER MO(_LOWER)
+#define RAISE MO(_RAISE)
+#define ADJUST MO(_ADJUST)
+// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_DVORAK] = LAYOUT ( /* dvorak */
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH,
- KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS,
+ KC_GRV, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS,
KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT,
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
),
[_QWERTY] = LAYOUT ( /* qwerty */
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
- KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
+ KC_GRV, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
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
),
[_COLEMAK] = LAYOUT ( /* colemak */
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL,
- KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
+ KC_GRV, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
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
),
[_WOW] = LAYOUT ( /* Dvorak with minor modifications for playing World of Warcraft */
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH,
- KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS,
+ KC_GRV, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS,
KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT,
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
),
+ [_DESTINY] = LAYOUT ( /* Dvorak with minor modifications for playing Destiny 2 and other FPS Looters */
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
+ KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH,
+ KC_GRV, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS,
+ KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT,
+ 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
+ ),
+
[_LOWER] = LAYOUT (
KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12,
KC_TILD, KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PIPE,
@@ -114,76 +109,48 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, KC_HOME, KC_END, _______, KC_DEL, _______, _______, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______
),
[_ADJUST] = LAYOUT (
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, KC_F13, KC_F14, KC_F15, _______, _______, _______, _______, _______, _______,
_______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, QWERTY, COLEMAK, DVORAK, _______, WOW,
+ _______, _______, _______, _______, _______, _______, _______, QWERTY, COLEMAK, DVORAK, DESTINY, WOW,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
-
};
+//clang-format on
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);
+ setPinInput(D5);
+ writePinLow(D5);
+ setPinInput(B0);
+ writePinLow(B0);
#endif
};
-void persistent_default_layer_set(uint16_t default_layer) {
- eeconfig_update_default_layer(default_layer);
- default_layer_set(default_layer);
-}
+layer_state_t layer_state_set_user(layer_state_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 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;
+ if (record->event.pressed) {
+ switch (keycode) {
+ case DVORAK:
+ set_single_persistent_default_layer(_DVORAK);
+ return false;
+ case QWERTY:
+ set_single_persistent_default_layer(_QWERTY);
+ return false;
+ case COLEMAK:
+ set_single_persistent_default_layer(_COLEMAK);
+ return false;
+ case WOW:
+ set_single_persistent_default_layer(_WOW);
+ return false;
+ case DESTINY:
+ set_single_persistent_default_layer(_DESTINY);
+ return false;
+ }
+ }
+ return true;
};
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
* 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/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 @@
-#pragma once
-
-#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 @@
-#----------------------------------------------------------------------------
-# On command line:
-#
-# make all = Make software.
-#
-# make clean = Clean out built project files.
-#
-# make coff = Convert ELF to AVR COFF.
-#
-# make extcoff = Convert ELF to AVR Extended COFF.
-#
-# make program = Download the hex file to the device.
-# Please customize your programmer settings(PROGRAM_CMD)
-#
-# make teensy = Download the hex file to the device, using teensy_loader_cli.
-# (must have teensy_loader_cli installed).
-#
-# make dfu = Download the hex file to the device, using dfu-programmer (must
-# have dfu-programmer installed).
-#
-# make flip = Download the hex file to the device, using Atmel FLIP (must
-# have Atmel FLIP installed).
-#
-# make dfu-ee = Download the eeprom file to the device, using dfu-programmer
-# (must have dfu-programmer installed).
-#
-# make flip-ee = Download the eeprom file to the device, using Atmel FLIP
-# (must have Atmel FLIP installed).
-#
-# make debug = Start either simulavr or avarice as specified for debugging,
-# with avr-gdb or avr-insight as the front end for debugging.
-#
-# make filename.s = Just compile filename.c into the assembler code only.
-#
-# make filename.i = Create a preprocessed source file for use in submitting
-# bug reports to the GCC project.
-#
-# To rebuild project do "make clean" then "make all".
-#----------------------------------------------------------------------------
-
-# Build Options
-# change to "no" to disable the options, or define them in the makefile.mk in
-# the appropriate keymap folder that will get included automatically
-#
-RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
-
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 @@
-// This is the canonical layout file for the Quantum project. If you want to add another keyboard,
-// this is the style you want to emulate.
-
-// Default ECO Layout
-// KLE here : http://www.keyboard-layout-editor.com/#/gists/0733eca6b4cb88ff9d7de746803f4039
-
#include QMK_KEYBOARD_H
-extern keymap_config_t keymap_config;
+enum layer_names { _QWERTY, _COLEMAK, _DVORAK, _LOWER, _RAISE, _ADJUST };
-// 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 _QWERTY 0
-#define _COLEMAK 1
-#define _DVORAK 2
-#define _LOWER 3
-#define _RAISE 4
-#define _ADJUST 16
+enum custom_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK, LOWER, RAISE, ADJUST };
-enum planck_keycodes {
- QWERTY = SAFE_RANGE,
- COLEMAK,
- DVORAK,
- LOWER,
- RAISE,
- BACKLIT
-};
-
-// Aliases to make reading the keymap easier
-#define GUIBSPC GUI_T(KC_BSPC) // GUI when held, BSPC when tapped.
+// Aliases to keep the keymap tidy
+#define GUIBSPC GUI_T(KC_BSPC) // GUI when held, BSPC when tapped.
+// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@@ -143,53 +120,39 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
};
+// clang-format on
-void persistent_default_layer_set(uint16_t default_layer) {
- eeconfig_update_default_layer(default_layer);
- default_layer_set(default_layer);
-}
+#ifdef AUDIO_ENABLE
+float tone_qwerty[][2] = SONG(QWERTY_SOUND);
+float tone_dvorak[][2] = SONG(DVORAK_SOUND);
+float tone_colemak[][2] = SONG(COLEMAK_SOUND);
+#endif
+
+void matrix_init_user(void) {
+#ifdef BOOTLOADER_CATERINA
+ // This will disable the red LEDs on the ProMicros
+ setPinInput(D5);
+ writePinLow(D5);
+ setPinInput(B0);
+ writePinLow(B0);
+#endif
+};
+
+layer_state_t layer_state_set_user(layer_state_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 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;
-}
-
+ if (record->event.pressed) {
+ switch (keycode) {
+ case QWERTY:
+ set_single_persistent_default_layer(_QWERTY);
+ return false;
+ case COLEMAK:
+ set_single_persistent_default_layer(_COLEMAK);
+ return false;
+ case DVORAK:
+ set_single_persistent_default_layer(_DVORAK);
+ return false;
+ }
+ }
+ return true;
+}
\ No newline at end of file
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 @@
-#include QMK_KEYBOARD_H
-#include "action_layer.h"
-#include "eeconfig.h"
-
-extern keymap_config_t keymap_config;
-
-// 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 _BASE 0
-#define _FN1 1
-#define _FN2 2
-
-enum custom_keycodes {
- QWERTY = SAFE_RANGE,
-};
-
-#define KC_ KC_TRNS
-#define KC_FN1 MO(_FN1)
-#define KC_FN2 MO(_FN2)
-#define KC_ESFN1 LT(_FN1, KC_ESC)
-#define KC_SPFN1 LT(_FN1, KC_SPACE)
-#define KC_SPFN2 LT(_FN2, KC_SPACE)
-#define KC_BSFN1 LT(_FN1, KC_BSPC)
-#define KC_BSFN2 LT(_FN2, KC_BSPC)
-#define KC_RST RESET
-#define KC_DBUG DEBUG
-#define KC_RTOG RGB_TOG
-#define KC_RMOD RGB_MOD
-#define KC_RHUI RGB_HUI
-#define KC_RHUD RGB_HUD
-#define KC_RSAI RGB_SAI
-#define KC_RSAD RGB_SAD
-#define KC_RVAI RGB_VAI
-#define KC_RVAD RGB_VAD
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_BASE] = LAYOUT_kc(
- //,----+----+----+----+----+----|----+----+----+----+----+----+----.
- TAB ,QUOT,COMM,DOT , P , Y , F , G , C , R , L ,SLSH,MINS,
- //|----`----`----`----`----`----|----`----`----`----`----`----`----|
- ESC , A , O , E , U , I , D , H , T , N , S , ENTER ,
- //|-----`----`----`----`----`----|----`----`----`----`----`--------|
- LSFT ,SCLN, Q , J , K , X , B , M , W , V , Z , RSFT ,
- //|-------`----`----`----`----`----|----`----`----`----`----`------|
- LCTL ,LALT,LGUI ,FN2 , BSPC , SPC , FN1 ,RGUI ,RALT , RCTL
- //`-----+----+-----+----+--------|--------+-----+-----+-----+------'
- ),
-
- [_FN1] = LAYOUT_kc(
- //,----+----+----+----+----+----|----+----+----+----+----+----+----.
- GRV , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,MINS,EQL ,
- //|----`----`----`----`----`----|----`----`----`----`----`----`----|
- CAPS ,RHUI,RSAI,RVAI,VOLU,LBRC,RBRC, , , ,SCLN, ,
- //|-----`----`----`----`----`----|----`----`----`----`----`--------|
- RMOD ,RHUD,RSAD,RVAD,VOLD,LCBR,RCBR, , , , UP , ,
- //|-------`----`----`----`----`----|----`----`----`----`----`------|
- RTOG , , , , DEL , INS , ,LEFT ,DOWN , RGHT
- //`-----+----+-----+----+--------|--------+-----+-----+-----+------'
- ),
-
- [_FN2] = LAYOUT_kc(
- //,----+----+----+----+----+----|----+----+----+----+----+----+----.
- TILD,EXLM, AT ,HASH,DLR ,PERC,CIRC,AMPR,ASTR,LPRN,RPRN,UNDS,PLUS,
- //|----`----`----`----`----`----|----`----`----`----`----`----`----|
- CAPS , , ,INS ,PGUP,HOME, F1 , F2 , F3 , F4 , F5 , F6 ,
- //|-----`----`----`----`----`----|----`----`----`----`----`--------|
- , , ,DEL ,PGDN,END , F7 , F8 , F9 ,F10 ,F11 , F12 ,
- //|-------`----`----`----`----`----|----`----`----`----`----`------|
- , , , , DEL , INS , , , ,
- //`-----+----+-----+----+--------|--------+-----+-----+-----+------'
- )
-
-};
-
-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);
-};
-
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 @@
#include QMK_KEYBOARD_H
-#include "action_layer.h"
-#include "eeconfig.h"
extern keymap_config_t keymap_config;
-#define _QWERTY 0
-#define _COLEMAK 1
-#define _DVORAK 2
-#define _LOWER 3
-#define _RAISE 4
-#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
@@ -28,10 +31,23 @@ enum custom_keycodes {
#define KC_QWRT QWERTY
#define KC_CLMK COLEMAK
#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,
@@ -48,12 +64,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
LCTL,BSPC,LGUI, ENT ,SPC ,LALT
),
- [_DVORAK] = LAYOUT_kc (
+ [_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,
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
+ LSFT,SCLN, Q , J , K , X ,LALT, RGUI, B , M , W , V , Z ,RSFT,
+ LOWR,BSPC,LCTL, ENT ,SPC ,RASE
),
[_LOWER] = LAYOUT_kc (
@@ -75,7 +91,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_ADJUST] = LAYOUT_kc (
F11 , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F12 ,
____,RST ,____,____,____,____, ____,____,____,____,____,____,
- ____,____,____,____,____,____, ____,QWRT,CLMK,DVRK,____,____,
+ ____,____,____,____,____,____, ____,QWRT,CLMK,DVRK,WOW ,____,
____,____,____,____,____,____,____, ____,____,____,____,____,____,____,
____,____,____, ____,____,____
)
@@ -86,76 +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);
};
+layer_state_t layer_state_set_user(layer_state_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;
- break;
- case LOWER:
+ case COLEMAK:
if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ set_single_persistent_default_layer(_COLEMAK);
}
return false;
- break;
- case RAISE:
+ case QWERTY:
if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ set_single_persistent_default_layer(_QWERTY);
}
return false;
- break;
- case ADJUST:
+ case WOW:
if (record->event.pressed) {
- layer_on(_ADJUST);
- } else {
- layer_off(_ADJUST);
+ set_single_persistent_default_layer(_WOW);
}
return false;
- break;
}
return true;
-}
+}
\ 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 @@
#include QMK_KEYBOARD_H
-extern keymap_config_t keymap_config;
-
-#define _DVORAK 0 // Dvorak layer
-#define _QWERTY 1 // Qwerty layer
-#define _COLEMAK 2 // Colemak layer
-#define _MEDIA 3 // Media Layer
-#define _KEYPAD 4 // Keypad Layer
-
-enum custom_keycodes {
- DVORAK = SAFE_RANGE,
- QWERTY,
- COLEMAK,
- MEDIA,
- KEYPAD
+enum layer_names {
+ _DVORAK,
+ _QWERTY,
+ _COLEMAK,
+ _KEYPAD,
};
+enum custom_keycodes { DVORAK = SAFE_RANGE, QWERTY, COLEMAK, KEYPAD };
+
// Aliases to make the keymap more uniform
#define GUI_END GUI_T(KC_END)
-#define MED_DEL LT(_MEDIA, KC_DEL)
#define KPD_ENT LT(_KEYPAD, KC_ENT)
+// clang-format off
+
/*
Function Keys on All Layers (Keypad toggles):
@@ -46,9 +40,9 @@ enum custom_keycodes {
,--------------.,--------------.
| LCtl | LAlt || RGUI | RCtl |
,------|-------|------||------+-------+-------.
- | | Del | Home || PgUp | Enter | |
- | BkSp | / |------||------| / | Space |
- | | Media | End || PgDn | KeyPd | |
+ | | | Home || PgUp | Enter | |
+ | BkSp | Del |------||------| / | Space |
+ | | | End || PgDn | KeyPd | |
`---------------------'`----------------------'
QWERTY layer:
@@ -66,9 +60,9 @@ enum custom_keycodes {
,--------------.,--------------.
| LCtl | LAlt || RGUI | RCtl |
,------|-------|------||------+-------+-------.
- | | Del | Home || PgUp | Enter | |
- | BkSp | / |------||------| / | Space |
- | | Media | End || PgDn | KeyPd | |
+ | | | Home || PgUp | Enter | |
+ | BkSp | Del |------||------| / | Space |
+ | | | End || PgDn | KeyPd | |
`---------------------'`----------------------'
Colemak layer:
@@ -86,31 +80,11 @@ enum custom_keycodes {
,--------------.,--------------.
| LCtl | LAlt || RGUI | RCtl |
,------|-------|------||------+-------+-------.
- | | Del | Home || PgUp | Enter | |
- | BkSp | / |------||------| / | Space |
- | | Media | End || PgDn | KeyPd | |
+ | | | Home || PgUp | Enter | |
+ | BkSp | Del |------||------| / | Space |
+ | | | End || PgDn | KeyPd | |
`---------------------'`----------------------'
- Media layer:
- ,-------------------------------------------.,-------------------------------------------.
- | F11 | F1 | F2 | F3 | F4 | F5 || F6 | F7 | F8 | F9 | F10 | F12 |
- |--------+------+------+------+------+------||------+------+------+------+------+--------|
- | | | | | | || | | | | | |
- |--------+------+------+------+------+------||------+------+------+------+------+--------|
- | | | Mute | Vol- | Vol+ | || | | | | | |
- |--------+------+------+------+------+------||------+------+------+------+------+--------|
- | | Stop | Prev | Play | Next | Sel || | | | | | |
- `--------+------+------+------+------+------'`------+------+------+------+------+--------'
- | | | | | | | | | |
- `---------------------------' `---------------------------'
- ,-------------.,-------------.
- | | || | |
- ,------|------|------||------+------+------.
- | | | || | | |
- | | |------||------| | |
- | | | || | | |
- `--------------------'`--------------------'
-
Keypad layer:
,-------------------------------------------.,-------------------------------------------.
| Power | | | | | || | NmLk | KP = | KP / | KP * | |
@@ -145,7 +119,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// Left Thumb
KC_LCTL, KC_LALT,
KC_HOME,
- KC_BSPC, MED_DEL, GUI_END,
+ KC_BSPC, KC_DEL, GUI_END,
// Right Hand
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] = {
// Left Thumb
KC_LCTL, KC_LALT,
KC_HOME,
- KC_BSPC, MED_DEL, KC_END,
+ KC_BSPC, KC_DEL, KC_END,
// Right Hand
KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_KEYPAD), RESET,
- KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
- KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL ,
+ KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
+ KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS ,
KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
KC_UP, KC_DOWN, KC_LBRC, KC_RBRC,
@@ -197,12 +171,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// Left Thumb
KC_LCTL, KC_LALT,
KC_HOME,
- KC_BSPC, MED_DEL, KC_END,
+ KC_BSPC, KC_DEL, KC_END,
// Right Hand
KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_KEYPAD), RESET,
KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
- KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL,
+ KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS,
KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
KC_UP, KC_DOWN, KC_LBRC, KC_RBRC,
@@ -212,32 +186,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_PGDN, KPD_ENT, KC_SPC
),
-[_MEDIA] = LAYOUT (
- // Left Hand
- _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5,
- _______, _______, _______, _______, _______, _______,
- _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______,
- _______, KC_MSTP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSEL,
- _______, _______, _______, _______,
- // Left Thumb
- _______, _______,
- _______,
- _______, _______, _______,
-
- // Right Hand
- _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______,
- // Right Thumb
- _______, _______,
- _______,
- _______, _______, _______
- ),
-
[_KEYPAD] = LAYOUT (
// Left Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
@@ -251,7 +199,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______,
_______, _______, _______,
- // Right Hand */
+ // Right Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, KC_NLCK, KC_PEQL, KC_PSLS, KC_PAST, _______,
_______, KC_P7, KC_P8, KC_P9, KC_PMNS, _______,
@@ -263,38 +211,26 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______,
_______, _______, KC_P0
)
-
};
-void persistent_default_layer_set(uint16_t default_layer) {
- eeconfig_update_default_layer(default_layer);
- default_layer_set(default_layer);
-}
+// clang-format on
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case DVORAK:
- if (record->event.pressed) {
- persistent_default_layer_set(1UL<<_DVORAK);
- }
- return false;
- break;
- 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;
- }
+ if (record->event.pressed) {
+ switch (keycode) {
+ case DVORAK:
+ set_single_persistent_default_layer(_DVORAK);
+ return false;
+ case QWERTY:
+ set_single_persistent_default_layer(_QWERTY);
+ return false;
+ case COLEMAK:
+ set_single_persistent_default_layer(_COLEMAK);
+ return false;
+ }
+ }
return true;
};
// Runs just one time when the keyboard initializes.
-void matrix_init_user(void) {
-};
+void matrix_init_user(void){};
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
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.
+Removed the Media layer 2018-12-07
+
## Still to do:
* 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
,--------------.,--------------.
| LCtl | LAlt || RGUI | RCtl |
,------|-------|------||------+-------+-------.
- | | Del | Home || PgUp | Enter | |
- | BkSp | / |------||------| / | Space |
- | | Media | End || PgDn | KeyPd | |
+ | | | Home || PgUp | Enter | |
+ | BkSp | Del |------||------| / | Space |
+ | | | End || PgDn | KeyPd | |
`---------------------'`----------------------'
### 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
,--------------.,--------------.
| LCtl | LAlt || RGUI | RCtl |
,------|-------|------||------+-------+-------.
- | | Del | Home || PgUp | Enter | |
- | BkSp | / |------||------| / | Space |
- | | Media | End || PgDn | KeyPd | |
+ | | | Home || PgUp | Enter | |
+ | BkSp | Del |------||------| / | Space |
+ | | | End || PgDn | KeyPd | |
`---------------------'`----------------------'
### 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
,--------------.,--------------.
| LCtl | LAlt || RGUI | RCtl |
,------|-------|------||------+-------+-------.
- | | Del | Home || PgUp | Enter | |
- | BkSp | / |------||------| / | Space |
- | | Media | End || PgDn | KeyPd | |
+ | | | Home || PgUp | Enter | |
+ | BkSp | Del |------||------| / | Space |
+ | | | End || PgDn | KeyPd | |
`---------------------'`----------------------'
-### layer 3 : Media layer
-
- ,-------------------------------------------.,-------------------------------------------.
- | F11 | F1 | F2 | F3 | F4 | F5 || F6 | F7 | F8 | F9 | F10 | F12 |
- |--------+------+------+------+------+------||------+------+------+------+------+--------|
- | | | | | | || | | | | | |
- |--------+------+------+------+------+------||------+------+------+------+------+--------|
- | | | Mute | Vol- | Vol+ | || | | | | | |
- |--------+------+------+------+------+------||------+------+------+------+------+--------|
- | | Stop | Prev | Play | Next | Sel || | | | | | |
- `--------+------+------+------+------+------'`------+------+------+------+------+--------'
- | | | | | | | | | |
- `---------------------------' `---------------------------'
- ,-------------.,-------------.
- | | || | |
- ,------|------|------||------+------+------.
- | | | || | | |
- | | |------||------| | |
- | | | || | | |
- `--------------------'`--------------------'
-
-
-
-### Keymap 4: Keypad layer
+### layer 3 : Keypad layer
,-------------------------------------------.,-------------------------------------------.
| 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 @@
#include QMK_KEYBOARD_H
-extern keymap_config_t keymap_config;
+enum layer_names { _QWERTY, _COLEMAK, _DVORAK, _LOWER, _RAISE, _ADJUST };
-// 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 _LOWER 3
-#define _RAISE 4
-#define _ADJUST 16
-
-enum planck_keycodes {
- DVORAK = SAFE_RANGE,
- QWERTY,
- COLEMAK,
- LOWER,
- RAISE,
- BACKLIT
-};
+enum custom_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK, LOWER, RAISE, ADJUST };
// Adding macros to make the keymaps below much easier to read.
-#define SFTSCLN SFT_T(KC_SCLN)
-#define SFTSLSH SFT_T(KC_SLSH)
-#define SFTZED SFT_T(KC_Z)
-//#define ALTENT ALT_T(KC_ENT)
-//#define ESCTRL CTL_T(KC_ESC)
-//#define TABGUI GUI_T(KC_TAB)
-#define CTRLQ CTL_T(KC_Q)
-#define CTRLV CTL_T(KC_V)
-#define ALTJ ALT_T(KC_J)
-#define ALTW ALT_T(KC_W)
-#define CTRLX CTL_T(KC_X)
-#define CTRLDOT CTL_T(KC_DOT)
-#define ALTC ALT_T(KC_C)
-#define ALTCOMM ALT_T(KC_COMM)
-//#define GUIBSPC GUI_T(KC_BSPC)
+/*
+ Visit https://github.com/qmk/qmk_firmware/blob/master/docs/feature_advanced_keycodes.md#mod-tap
+ to read why these macros below are side-aware (LALT, RCTL, etc).
+*/
+#define CTLSCLN RCTL_T(KC_SCLN)
+#define CTLSLSH LCTL_T(KC_SLSH)
+#define RCTLZED RCTL_T(KC_Z)
+#define LCTLZED LCTL_T(KC_Z)
+#define ALTDOT RALT_T(KC_DOT)
+#define ALTX LALT_T(KC_X)
+#define ALTQ LALT_T(KC_Q)
+#define ALTV RALT_T(KC_V)
+#define GUICOMM RGUI_T(KC_COMM)
+#define GUIJ LGUI_T(KC_J)
+#define GUIC LGUI_T(KC_C)
+#define GUIW RGUI_T(KC_W)
+// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Dvorak
@@ -48,19 +32,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |------+------+------+------+------| |------+------+------+------+------|
* | A | O | E | U | I | | D | H | T | N | S |
* |------+------+------+------+------| |------+------+------+------+------|
- * |SFT/ ;|CTL/ Q|ALT/ J| K | X | | B | M |ALT/ W|CTL/ V|SFT/ Z|
+ * |CTL/ ;|ALT/ Q|GUI/ J| K | X | | B | M |GUI/ W|ALT/ V|CTL/ Z|
* `----------------------------------' `----------------------------------'
* ,--------------------. ,------,-------------.
- * | LOWER| Gui | | | | Ent |RAISE |
- * `-------------| BSpc | | Spc |------+------.
+ * | LOWER| BSPC | | | | Spc |RAISE |
+ * `-------------| SHFT | | Ent |------+------.
* | | | |
* `------' `------'
*/
[_DVORAK] = LAYOUT ( \
KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, \
KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, \
- SFTSCLN, CTRLQ, ALTJ, KC_K, KC_X, KC_B, KC_M, ALTW, CTRLV, SFTZED, \
- LOWER, KC_LGUI, KC_BSPC, KC_SPC, KC_ENT, RAISE \
+ CTLSCLN, ALTQ, GUIJ, KC_K, KC_X, KC_B, KC_M, GUIW, ALTV, RCTLZED, \
+ LOWER, KC_BSPC, KC_LSFT, KC_ENT, KC_SPC, RAISE \
),
/* Qwerty
@@ -70,19 +54,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |------+------+------+------+------| |------+------+------+------+------|
* | A | S | D | F | G | | H | J | K | L | ; |
* |------+------+------+------+------| |------+------+------+------+------|
- * |SFT/ Z|CTL/ X|ALT/ C| V | B | | N | M |ALT/ ,|CTL/ .|SFT/ /|
+ * |CTL/ Z|ALT/ X|GUI/ C| V | B | | N | M |GUI/ ,|ALT/ .|CTL/ /|
* `----------------------------------' `----------------------------------'
* ,--------------------. ,------,-------------.
- * | LOWER| Gui | | | | Ent |RAISE |
- * `-------------| BSpc | | Spc |------+------.
+ * | LOWER| BSPC | | | | Spc |RAISE |
+ * `-------------| SHFT | | Ent |------+------.
* | | | |
* `------' `------'
*/
[_QWERTY] = LAYOUT ( \
KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, \
KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, \
- SFTZED, CTRLX, ALTC, KC_V, KC_B, KC_N, KC_M, ALTCOMM, CTRLDOT, SFTSLSH, \
- LOWER, KC_LGUI, KC_BSPC, KC_SPC, KC_ENT, RAISE \
+ LCTLZED, ALTX, GUIC, KC_V, KC_B, KC_N, KC_M, GUICOMM, ALTDOT, CTLSLSH, \
+ LOWER, KC_BSPC, KC_LSFT, KC_ENT, KC_SPC, RAISE \
),
/* Colemak
@@ -92,19 +76,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |------+------+------+------+------| |------+------+------+------+------|
* | A | R | S | T | D | | H | N | E | I | S |
* |------+------+------+------+------| |------+------+------+------+------|
- * |SFT/ Z|CTL/ X|ALT/ C| V | B | | K | M |ALT/ ,|CTL/ .|SFT/ /|
+ * |CTL/ Z|ALT/ X|GUI/ C| V | B | | K | M |GUI/ ,|ALT/ .|CTL/ /|
* `----------------------------------' `----------------------------------'
* ,--------------------. ,------,-------------.
- * | LOWER| Gui | | | | Ent |RAISE |
- * `-------------| BSpc | | Spc |------+------.
+ * | LOWER| BSPC | | | | Spc |RAISE |
+ * `-------------| SHFT | | Ent |------+------.
* | | | |
* `------' `------'
*/
[_COLEMAK] = LAYOUT ( \
KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, \
KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, \
- SFTZED, CTRLX, ALTC, KC_V, KC_B, KC_K, KC_M, ALTCOMM, CTRLDOT, SFTSLSH, \
- LOWER, KC_LGUI, KC_BSPC, KC_SPC, KC_ENT, RAISE \
+ LCTLZED, ALTX, GUIC, KC_V, KC_B, KC_K, KC_M, GUICOMM, ALTDOT, CTLSLSH, \
+ LOWER, KC_BSPC, KC_LSFT, KC_ENT, KC_SPC, RAISE \
),
/* Lower
@@ -168,65 +152,44 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
*/
[_ADJUST] = LAYOUT ( \
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_UP, KC_F9, KC_F10, \
- KC_F11, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_F12, \
+ KC_F11, RESET, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_F12, \
_______, QWERTY, COLEMAK, DVORAK, _______, RESET, _______, _______, _______, _______, \
_______, _______, _______, _______, _______, _______ \
-)
+ )
};
+// clang-format on
-void persistent_default_layer_set(uint16_t default_layer) {
- eeconfig_update_default_layer(default_layer);
- default_layer_set(default_layer);
-};
+#ifdef AUDIO_ENABLE
+float tone_qwerty[][2] = SONG(QWERTY_SOUND);
+float tone_dvorak[][2] = SONG(DVORAK_SOUND);
+float tone_colemak[][2] = SONG(COLEMAK_SOUND);
+#endif
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);
+#ifdef BOOTLOADER_CATERINA
+ // This will disable the red LEDs on the ProMicros
+ setPinInput(D5);
+ writePinLow(D5);
+ setPinInput(B0);
+ writePinLow(B0);
+#endif
};
+layer_state_t layer_state_set_user(layer_state_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 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;
- }
+ if (record->event.pressed) {
+ switch (keycode) {
+ case QWERTY:
+ set_single_persistent_default_layer(_QWERTY);
+ return false;
+ case COLEMAK:
+ set_single_persistent_default_layer(_COLEMAK);
+ return false;
+ case DVORAK:
+ set_single_persistent_default_layer(_DVORAK);
+ return false;
+ }
+ }
return true;
-};
+}
\ 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
along with this program. If not, see .
*/
-#ifndef CONFIG_USER_H
-#define CONFIG_USER_H
-
-#include "../../config.h"
+#pragma once
/* Use I2C or Serial, not both */
@@ -33,6 +30,4 @@ along with this program. If not, see .
#define MASTER_LEFT
// #define _MASTER_RIGHT
-// #define EE_HANDS
-
-#endif
+// #define EE_HANDS
\ No newline at end of file
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 @@
-/*
-This is the keymap for the keyboard
-
-Copyright 2012 Jun Wako
-Copyright 2015 Jack Humbert
-Copyright 2017 Art Ortenburger
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see .
-*/
-
#include QMK_KEYBOARD_H
-#include "action_layer.h"
-#include "eeconfig.h"
-extern keymap_config_t keymap_config;
+enum layer_names { _QWERTY, _COLEMAK, _DVORAK, _LOWER, _RAISE, _ADJUST };
-// 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 _LOWER 3
-#define _RAISE 4
-#define _ADJUST 16
+enum custom_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK, LOWER, RAISE, ADJUST };
-enum custom_keycodes {
- DVORAK = SAFE_RANGE,
- QWERTY,
- COLEMAK,
- LOWER,
- RAISE,
- ADJUST,
-};
+// Aliases to keep the keymap tidy
+#define ADJUST MO(_ADJUST)
+#define LOWER MO(_LOWER)
+#define RAISE MO(_RAISE)
+
+// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_DVORAK] = LAYOUT ( \
@@ -85,69 +51,39 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
+// clang-format on
-void persistent_default_layer_set(uint16_t default_layer) {
- eeconfig_update_default_layer(default_layer);
- default_layer_set(default_layer);
-}
+#ifdef AUDIO_ENABLE
+float tone_qwerty[][2] = SONG(QWERTY_SOUND);
+float tone_dvorak[][2] = SONG(DVORAK_SOUND);
+float tone_colemak[][2] = SONG(COLEMAK_SOUND);
+#endif
+
+void matrix_init_user(void) {
+#ifdef BOOTLOADER_CATERINA
+ // This will disable the red LEDs on the ProMicros
+ setPinInput(D5);
+ writePinLow(D5);
+ setPinInput(B0);
+ writePinLow(B0);
+#endif
+};
+
+layer_state_t layer_state_set_user(layer_state_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_NOTE_ARRAY(tone_qwerty, false, 0);
- #endif
- persistent_default_layer_set(1UL<<_QWERTY);
- }
- return false;
- break;
- case COLEMAK:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- PLAY_NOTE_ARRAY(tone_colemak, false, 0);
- #endif
- persistent_default_layer_set(1UL<<_COLEMAK);
- }
- return false;
- break;
- case DVORAK:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- PLAY_NOTE_ARRAY(tone_dvorak, false, 0);
- #endif
- persistent_default_layer_set(1UL<<_DVORAK);
- }
- 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;
-}
+ if (record->event.pressed) {
+ switch (keycode) {
+ case QWERTY:
+ set_single_persistent_default_layer(_QWERTY);
+ return false;
+ case COLEMAK:
+ set_single_persistent_default_layer(_COLEMAK);
+ return false;
+ case DVORAK:
+ set_single_persistent_default_layer(_DVORAK);
+ return false;
+ }
+ }
+ return true;
+}
\ No newline at end of file
diff --git a/keyboards/keebio/fourier/keymaps/xyverz/config.h b/keyboards/rgbkb/sol/keymaps/xyverz/config.h
similarity index 81%
rename from keyboards/keebio/fourier/keymaps/xyverz/config.h
rename to 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
along with this program. If not, see .
*/
-#ifndef CONFIG_USER_H
-#define CONFIG_USER_H
+#pragma once
-#include "config_common.h"
-/* Use I2C or Serial, not both */
+// place overrides here
-#define USE_SERIAL
-// #define USE_I2C
-
-#define EE_HANDS
-
-#endif
+/* #define SSD1306OLED */
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 @@
+#include QMK_KEYBOARD_H
+#ifdef PROTOCOL_LUFA
+#include "lufa.h"
+#include "split_util.h"
+#endif
+#ifdef SSD1306OLED
+ #include "common/ssd1306.h"
+#endif
+
+extern keymap_config_t keymap_config;
+
+#ifdef RGBLIGHT_ENABLE
+//Following line allows macro to read current RGB settings
+extern rgblight_config_t rgblight_config;
+#endif
+
+extern uint8_t is_master;
+
+// 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.
+enum layer_number {
+ _DVORAK = 0,
+ _DESTINY,
+ _QWERTY,
+ _COLEMAK,
+ _LOWER,
+ _RAISE,
+ _ADJUST
+};
+
+enum custom_keycodes {
+ DVORAK = SAFE_RANGE,
+ DESTINY,
+ QWERTY,
+ COLEMAK,
+ LOWER,
+ RAISE,
+ ADJUST,
+ BACKLIT,
+ RGBRST
+};
+
+enum macro_keycodes {
+ KC_SAMPLEMACRO,
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [_DVORAK] = LAYOUT( \
+ 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, \
+ 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, \
+ 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, \
+ 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, \
+ 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, \
+ KC_BSPC, KC_RGUI, KC_ENT, KC_SPC \
+
+ ),
+
+ [_DESTINY] = LAYOUT( \
+ 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, \
+ 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, \
+ 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, \
+ 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, \
+ 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, \
+ KC_BSPC, KC_RGUI, KC_ENT, KC_SPC \
+
+ ),
+
+ [_QWERTY] = LAYOUT( \
+ 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, \
+ 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, \
+ 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, \
+ 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, \
+ 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, \
+ KC_BSPC, KC_RGUI, KC_ENT, KC_SPC \
+ ),
+
+ [_COLEMAK] = LAYOUT( \
+ 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, \
+ 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, \
+ 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, \
+ 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, \
+ 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, \
+ KC_BSPC, KC_RGUI, KC_ENT, KC_SPC \
+ ),
+
+ [_LOWER] = LAYOUT( \
+ KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12, \
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
+ KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, XXXXXXX, XXXXXXX, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, \
+ _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______, _______, \
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
+ KC_DEL, _______, _______, KC_INS \
+ ),
+
+ [_RAISE] = LAYOUT( \
+ KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12, \
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
+ KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, XXXXXXX, XXXXXXX, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, \
+ _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______, _______, \
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
+ KC_DEL, _______, _______, KC_INS \
+ ),
+
+ /* ADJUST
+ * ,------------------------------------------------. ,------------------------------------------------.
+ * | F11 | F1 | F2 | F3 | F4 | F5 | RESET| | | F6 | F7 | F8 | F9 | F10 | F12 |
+ * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
+ * | | |QWERTY|COLEMK|DVORAK|DESTNY| | | | | PrSc | ScLk | NmLk | | |
+ * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
+ * | | | Mute | Vol- | Vol+ | | | | |RGBTOG|RGBMOD| HUI | SAI | VAI | |
+ * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
+ * | | | Prev | Play | Next | | | | | |RGBRMD| HUD | SAD | VAD | |
+ * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
+ * | | | | Home | End | | | | | | PgUp | PgDn | | | |
+ * `------+------+------+------+------+------+------| |------+------+------+------+------+------+------'
+ * | Del | | | | Ins |
+ * `-------------' `-------------'
+ */
+
+ [_ADJUST] = LAYOUT( \
+ _______, _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, \
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_NLCK, _______, _______, \
+ KC_CAPS, _______, QWERTY, COLEMAK, DVORAK, DESTINY, XXXXXXX, XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, \
+ _______, _______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, _______, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, _______, \
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
+ KC_DEL, _______, _______, KC_INS \
+ )
+};
+
+
+
+// define variables for reactive RGB
+bool TOG_STATUS = false;
+int RGB_current_mode;
+
+// Setting ADJ layer RGB back to default
+void update_tri_layer_RGB(uint8_t layer1, uint8_t layer2, uint8_t layer3) {
+ if (IS_LAYER_ON(layer1) && IS_LAYER_ON(layer2)) {
+ #ifdef RGBLIGHT_ENABLE
+ //rgblight_mode(RGB_current_mode);
+ #endif
+ layer_on(layer3);
+ } else {
+ layer_off(layer3);
+ }
+}
+
+layer_state_t layer_state_set_user(layer_state_t state) {
+ return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
+}
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case DVORAK:
+ if (record->event.pressed) {
+ 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;
+
+/*
+ Commenting this out since I removed the layer, but I want this in here for reference.
+
+ case FN:
+ if (record->event.pressed) {
+ //not sure how to have keyboard check mode and set it to a variable, so my work around
+ //uses another variable that would be set to true after the first time a reactive key is pressed.
+ if (TOG_STATUS) { //TOG_STATUS checks is another reactive key currently pressed, only changes RGB mode if returns false
+ } else {
+ TOG_STATUS = !TOG_STATUS;
+ #ifdef RGBLIGHT_ENABLE
+ //rgblight_mode(15);
+ #endif
+ }
+ layer_on(_FN);
+ } else {
+ #ifdef RGBLIGHT_ENABLE
+ //rgblight_mode(RGB_current_mode); // revert RGB to initial mode prior to RGB mode change
+ #endif
+ layer_off(_FN);
+ TOG_STATUS = false;
+ }
+ return false;
+ break;
+ */
+ case ADJUST:
+ if (record->event.pressed) {
+ layer_on(_ADJUST);
+ } else {
+ layer_off(_ADJUST);
+ }
+ return false;
+ break;
+ //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
+ case RGBRST:
+ #ifdef RGBLIGHT_ENABLE
+ if (record->event.pressed) {
+ eeconfig_update_rgblight_default();
+ rgblight_enable();
+ RGB_current_mode = rgblight_config.mode;
+ }
+ #endif
+ break;
+ }
+ return true;
+}
+
+void matrix_init_user(void) {
+ #ifdef RGBLIGHT_ENABLE
+ RGB_current_mode = rgblight_config.mode;
+ #endif
+ //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h
+ #ifdef SSD1306OLED
+ iota_gfx_init(!has_usb()); // turns on the display
+ #endif
+}
+
+
+//SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h
+#ifdef SSD1306OLED
+
+// hook point for 'led_test' keymap
+// 'default' keymap's led_test_init() is empty function, do nothing
+// 'led_test' keymap's led_test_init() force rgblight_mode_noeeprom(35);
+__attribute__ ((weak))
+void led_test_init(void) {}
+
+void matrix_scan_user(void) {
+ led_test_init();
+ iota_gfx_task(); // this is what updates the display continuously
+}
+
+void matrix_update(struct CharacterMatrix *dest,
+ const struct CharacterMatrix *source) {
+ if (memcmp(dest->display, source->display, sizeof(dest->display))) {
+ memcpy(dest->display, source->display, sizeof(dest->display));
+ dest->dirty = true;
+ }
+}
+
+//assign the right code to your layers for OLED display
+#define L_BASE 0
+#define L_FN (1<<_FN)
+#define L_ADJ (1<<_ADJ)
+
+static void render_logo(struct CharacterMatrix *matrix) {
+
+ static char logo[]={
+ 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94,
+ 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4,
+ 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4,
+ 0};
+ matrix_write(matrix, logo);
+ //matrix_write_P(&matrix, PSTR(" Split keyboard kit"));
+}
+
+
+
+void render_status(struct CharacterMatrix *matrix) {
+
+ // Render to mode icon
+ static char logo[][2][3]={{{0x95,0x96,0},{0xb5,0xb6,0}},{{0x97,0x98,0},{0xb7,0xb8,0}}};
+ if(keymap_config.swap_lalt_lgui==false){
+ matrix_write(matrix, logo[0][0]);
+ matrix_write_P(matrix, PSTR("\n"));
+ matrix_write(matrix, logo[0][1]);
+ }else{
+ matrix_write(matrix, logo[1][0]);
+ matrix_write_P(matrix, PSTR("\n"));
+ matrix_write(matrix, logo[1][1]);
+ }
+
+ // 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
+ char buf[40];
+ snprintf(buf,sizeof(buf), "Undef-%ld", layer_state);
+ matrix_write_P(matrix, PSTR("\nLayer: "));
+ switch (layer_state) {
+ case L_BASE:
+ matrix_write_P(matrix, PSTR("Default"));
+ break;
+ /* case L_FN:
+ matrix_write_P(matrix, PSTR("FN"));
+ break; */
+ case L_ADJ:
+ /* case L_ADJ_TRI: */
+ matrix_write_P(matrix, PSTR("ADJ"));
+ break;
+ default:
+ matrix_write(matrix, buf);
+ }
+
+ // Host Keyboard LED Status
+ char led[40];
+ snprintf(led, sizeof(led), "\n%s %s %s",
+ (IS_HOST_LED_ON(USB_LED_NUM_LOCK)) ? "NUMLOCK" : " ",
+ (IS_HOST_LED_ON(USB_LED_CAPS_LOCK)) ? "CAPS" : " ",
+ (IS_HOST_LED_ON(USB_LED_SCROLL_LOCK)) ? "SCLK" : " ");
+ matrix_write(matrix, led);
+}
+
+
+void iota_gfx_task_user(void) {
+ struct CharacterMatrix matrix;
+
+#if DEBUG_TO_SCREEN
+ if (debug_enable) {
+ return;
+ }
+#endif
+
+ matrix_clear(&matrix);
+ if(is_master){
+ render_status(&matrix);
+ }else{
+ render_logo(&matrix);
+ }
+ matrix_update(&display, &matrix);
+}
+
+#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 @@
+# Xyverz's Sol Layout
+## Layout
+
+### Base modifier layout
+```
+ * ,------------------------------------------------. ,------------------------------------------------.
+ * | ESC | | | | | | - | | = | | | | | | \ |
+ * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
+ * | Tab | | | | | | [ | | ] | | | | | | / |
+ * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
+ * | Del | | | | | | | | | | | | | | |
+ * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
+ * |Shift | | | | | | | | | | | | | |Shift |
+ * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
+ * | Adj | Alt | ` | Left | Rght | Ctrl | Alt | | Alt | Ctrl | Up | Down | / | = | Adj |
+ * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------'
+ * | BkSp | Win | | Enter| Space|
+ * `-------------' `-------------'
+```
+
+### Qwerty alphas
+```
+ * ,------------------------------------------------. ,------------------------------------------------.
+ * | | | | | | | | | | | | | | | |
+ * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
+ * | | Q | W | E | R | T | | | | Y | U | I | O | P | |
+ * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
+ * | | A | S | D | F | G | | | | H | J | K | L | ; | ' |
+ * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
+ * | | Z | X | C | V | B | | | | N | M | , | . | / | |
+ * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
+ * | | | | | | | | | | | | | | | |
+ * `------+------+------+------+------+------+------| |------+------+------+------+------+------+------'
+ * | | | | | |
+ * `-------------' `-------------'
+```
+
+### Dvorak alphas
+```
+ * ,------------------------------------------------. ,------------------------------------------------.
+ * | | | | | | | | | | | | | | | |
+ * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
+ * | | " | , | . | P | Y | | | | F | G | C | R | L | |
+ * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
+ * | | A | O | E | U | I | | | | D | H | T | N | S | - |
+ * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
+ * | | ; | Q | J | K | X | | | | B | M | W | V | Z | |
+ * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
+ * | | | | | | | | | | | | | | | |
+ * `------+------+------+------+------+------+------| |------+------+------+------+------+------+------'
+ * | | | | | |
+ * `-------------' `--------=----'
+```
+### Colemak alphas
+```
+ * ,------------------------------------------------. ,------------------------------------------------.
+ * | | | | | | | | | | | | | | | |
+ * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
+ * | | Q | W | F | P | B | | | | J | L | U | Y | ; | |
+ * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
+ * | | A | R | S | T | G | | | | K | N | E | I | O | ' |
+ * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
+ * | | Z | X | C | D | V | | | | M | H | , | . | / | |
+ * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
+ * | | | | | | | | | | | | | | | |
+ * `------+------+------+------+------+------+------| |------+------+------+------+------+------+------'
+ * | | | | | |
+ * `-------------' `-------------'
+```
+
+### Adjust (ADJ)
+```
+ * ,------------------------------------------------. ,------------------------------------------------.
+ * | F11 | F1 | F2 | F3 | F4 | F5 | RESET| | | F6 | F7 | F8 | F9 | F10 | F12 |
+ * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
+ * | | |QWERTY|DVORAK|COLEMK| | | | | | PrSc | ScLk | NmLk | | |
+ * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
+ * | | | Mute | Vol- | Vol+ | | | | |RGBTOG|RGBMOD| HUI | SAI | VAI | |
+ * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
+ * | | | Prev | Play | Next | | | | | |RGBRMD| HUD | SAD | VAD | |
+ * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
+ * | | | | Home | End | | | | | | PgUp | PgDn | | | |
+ * `------+------+------+------+------+------+------| |------+------+------+------+------+------+------'
+ * | Del | | | | Ins |
+ * `-------------' `-------------'
+```
+
+## Customize
+
+see `qmk_firmware/keyboards/sol/rev1/keymaps/default/rules.mk`
+
+```
+
+# Variables you can set for SOL
+
+BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
+MOUSEKEY_ENABLE = no # Mouse keys
+EXTRAKEY_ENABLE = yes # Audio control and System control
+CONSOLE_ENABLE = no # Console for debug
+COMMAND_ENABLE = ne # Commands for debug and configuration
+NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
+RGBLIGHT_ENABLE = yes # Enable global lighting effects. Do not enable with RGB Matrix
+LED_ANIMATIONS = yes # LED animations
+LED_MIRRORED = no # Mirror LEDs across halves (enable DIP 1 on slave, and DIP 2 and 3 on master)
+RGB_MATRIX_ENABLE = no # Enable per-key coordinate based RGB effects. Do not enable with RGBlight
+RGB_MATRIX_KEYPRESSES = no # Enable reactive per-key effects. Can be very laggy
+RGBLIGHT_FULL_POWER = no # Allow maximum RGB brightness. Otherwise, limited to a safe level for a normal USB-A port
+UNICODE_ENABLE = no # Unicode
+SWAP_HANDS_ENABLE = no # Enable one-hand typing
+ENCODER_ENABLE_CUSTOM = yes # Enable rotary encoder
+
+OLED_ENABLE = yes # OLED_ENABLE
+IOS_DEVICE_ENABLE = no # Limit max brightness to connect to IOS device (iPad,iPhone)
+
+
+```
+## Compile
+
+go to qmk top directory.
+```
+$ cd qmk_firmware
+```
+
+build
+```
+$ make sol:xyverz
+```
+
+After the initial flash with AVRdudess, you should be able to flash using this:
+```
+$ make sol:xyverz:flash
+```
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 @@
+# Build Options
+# change to "no" to disable the options, or define them in the Makefile in
+# the appropriate keymap folder that will get included automatically
+#
+BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
+MOUSEKEY_ENABLE = no # Mouse keys
+
+EXTRAKEY_ENABLE = yes # Audio control and System control
+CONSOLE_ENABLE = no # Console for debug
+COMMAND_ENABLE = no # Commands for debug and configuration
+NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
+RGBLIGHT_ENABLE = yes # Enable global lighting effects. Do not enable with RGB Matrix
+RGBLIGHT_ANIMATIONS = yes # LED animations
+LED_MIRRORED = yes # Mirror LEDs across halves (enable DIP 1 on slave, and DIP 2 and 3 on master)
+RGB_MATRIX_ENABLE = no # Enable per-key coordinate based RGB effects. Do not enable with RGBlight
+RGB_MATRIX_KEYPRESSES = no # Enable reactive per-key effects. Can be very laggy
+RGBLIGHT_FULL_POWER = no # Allow maximum RGB brightness. Otherwise, limited to a safe level for a normal USB-A port
+UNICODE_ENABLE = no # Unicode
+SWAP_HANDS_ENABLE = no # Enable one-hand typing
+ENCODER_ENABLE_CUSTOM = no # Enable rotary encoder
+AUDIO_ENABLE = no
+
+OLED_ENABLE = yes # OLED_ENABLE
+IOS_DEVICE_ENABLE = no # Limit max brightness to connect to IOS device (iPad,iPhone)
+
+# Do not edit past here
+
+ifeq ($(strip $(OLED_ENABLE)), yes)
+ OPT_DEFS += -DOLED_ENABLE
+endif
+
+ifeq ($(strip $(ENCODER_ENABLE_CUSTOM)), yes)
+ OPT_DEFS += -DENCODER_ENABLE_CUSTOM
+ SRC += common/knob_v2.c
+
+endif
+
+ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes)
+ OPT_DEFS += -DIOS_DEVICE_ENABLE
+
+else ifeq ($(strip $(RGBLIGHT_FULL_POWER)), yes)
+ OPT_DEFS += -DRGBLIGHT_FULL_POWER
+endif
+
+ifeq ($(strip $(RGB_MATRIX_KEYPRESSES)), yes)
+ OPT_DEFS += -DRGB_MATRIX_KEYPRESSES
+endif
+
+ifeq ($(strip $(LED_MIRRORED)), yes)
+ OPT_DEFS += -DLED_MIRRORED
+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 @@
#include QMK_KEYBOARD_H
-extern keymap_config_t keymap_config;
+enum layer_names { _QWERTY, _COLEMAK, _DVORAK, _LOWER, _RAISE, _ADJUST };
-enum planck_layers {
- _QWERTY,
- _COLEMAK,
- _DVORAK,
- _LOWER,
- _RAISE,
- _ADJUST
-};
-
-enum planck_keycodes {
- DVORAK = SAFE_RANGE,
- QWERTY,
- COLEMAK,
- LOWER,
- RAISE,
- ADJUST
-};
+enum custom_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK, LOWER, RAISE, ADJUST };
// Aliases for some other things I want to try out
#define RAI_ESC LT(_RAISE, KC_ESC)
@@ -26,6 +10,7 @@ enum planck_keycodes {
#define LOW_MIN LT(_LOWER, KC_MINS) // Same as above, but for Dvorak layer
#define GUIBSPC GUI_T(KC_BSPC)
+// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_DVORAK] = LAYOUT( /* 0: Dvorak */
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] = {
KC_HOME, KC_END, _______, _______, _______, _______, KC_PGUP, KC_PGDN
)
};
+// clang-format on
-void persistent_default_layer_set(uint16_t default_layer) {
- eeconfig_update_default_layer(default_layer);
- default_layer_set(default_layer);
-}
+layer_state_t layer_state_set_user(layer_state_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 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;
-}
+ if (record->event.pressed) {
+ switch (keycode) {
+ case QWERTY:
+ set_single_persistent_default_layer(_QWERTY);
+ return false;
+ case COLEMAK:
+ set_single_persistent_default_layer(_COLEMAK);
+ return false;
+ case DVORAK:
+ set_single_persistent_default_layer(_DVORAK);
+ return false;
+ }
+ }
+ return true;
+}
\ No newline at end of file
diff --git a/keyboards/gh60/revc/keymaps/xyverz/keymap.c b/layouts/community/60_ansi/xyverz/keymap.c
similarity index 83%
rename from keyboards/gh60/revc/keymaps/xyverz/keymap.c
rename to 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 @@
#include QMK_KEYBOARD_H
+enum layer_names {
+ _QW,
+ _DV,
+ _CM,
+ _FL,
+};
-extern keymap_config_t keymap_config;
-
-
-// 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 _QW 0
-#define _DV 1
-#define _CM 2
-#define _FL 3
-
-// Macro name shortcuts
-#define QWERTY M(_QW)
-#define DVORAK M(_DV)
-#define COLEMAK M(_CM)
+enum planck_keycodes { DVORAK = SAFE_RANGE, QWERTY, COLEMAK };
+// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
@@ -113,30 +105,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
};
+// clang-format on
-void persistent_default_layer_set(uint16_t default_layer) {
- eeconfig_update_default_layer(default_layer);
- default_layer_set(default_layer);
-}
-
-const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
-{
- switch(id) {
- case _DV:
- if (record->event.pressed) {
- persistent_default_layer_set(1UL<<_DV);
- }
- break;
- case _QW:
- if (record->event.pressed) {
- persistent_default_layer_set(1UL<<_QW);
- }
- break;
- case _CM:
- if (record->event.pressed) {
- persistent_default_layer_set(1UL<<_CM);
- }
- break;
- }
- return MACRO_NONE;
-};
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ if (record->event.pressed) {
+ switch (keycode) {
+ case DVORAK:
+ set_single_persistent_default_layer(_DV);
+ return false;
+ case QWERTY:
+ set_single_persistent_default_layer(_QW);
+ return false;
+ case COLEMAK:
+ set_single_persistent_default_layer(_CM);
+ return false;
+ }
+ }
+ return true;
+}
\ No newline at end of file
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 @@
+#pragma once
+
+#define TAPPING_TERM 600 // ms
+#undef RGBLIGHT_HUE_STEP
+#define RGBLIGHT_HUE_STEP 8
diff --git a/keyboards/clueboard/66/keymaps/xyverz/keymap.c b/layouts/community/66_ansi/xyverz/keymap.c
similarity index 86%
rename from keyboards/clueboard/66/keymaps/xyverz/keymap.c
rename to 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 @@
// It's based on the default keymap, but Dvorak!
#include QMK_KEYBOARD_H
-#include "action_layer.h"
-#include "eeconfig.h"
-extern keymap_config_t keymap_config;
-
-// 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 _QWERTY 0
-#define _COLEMAK 1
-#define _DVORAK 2
-#define _FL 3
-#define _CL 4
+enum layer_names {
+ _QWERTY,
+ _DVORAK,
+ _COLEMAK,
+ _FL,
+ _CL
+};
enum planck_keycodes {
QWERTY = SAFE_RANGE,
@@ -27,6 +21,7 @@ enum planck_keycodes {
#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
#define FN_CAPS LT(_FL, KC_CAPS) // Tap for Caps Lock, Hold for Function Layer
+// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap _QWERTY: Base Layer (Default Layer)
* ,-----------------------------------------------------------. ,---.
@@ -107,33 +102,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAI, \
_______, _______, _______, _______, RGB_MOD, RGB_MOD, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_HUI),
};
-
-
-void persistent_default_layer_set(uint16_t default_layer) {
- eeconfig_update_default_layer(default_layer);
- default_layer_set(default_layer);
-}
+// clang-format on
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;
- }
- return true;
+ if (record->event.pressed) {
+ switch (keycode) {
+ case QWERTY:
+ set_single_persistent_default_layer(_QWERTY);
+ return false;
+ case DVORAK:
+ set_single_persistent_default_layer(_DVORAK);
+ return false;
+ case COLEMAK:
+ set_single_persistent_default_layer(_COLEMAK);
+ return false;
+ }
+ }
+ return true;
}
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 @@
#include QMK_KEYBOARD_H
-#include "action_layer.h"
-#include "eeconfig.h"
-extern keymap_config_t keymap_config;
+enum layer_names { _QWERTY, _COLEMAK, _DVORAK, _LOWER, _RAISE, _ADJUST };
-// 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 _QWERTY 0
-#define _COLEMAK 1
-#define _DVORAK 2
-#define _LOWER 3
-#define _RAISE 4
-#define _ADJUST 16
-
-enum custom_keycodes {
- QWERTY = SAFE_RANGE,
- COLEMAK,
- DVORAK,
- LOWER,
- RAISE,
- ADJUST
-};
+enum custom_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK, LOWER, RAISE, ADJUST };
// Aliases to keep the keymap tidy
-#define GUIBSPC GUI_T(KC_BSPC) // GUI when held, BSPC when tapped.
-#define RGB_SWR RGB_M_SW // Swirl Animation alias
-#define RGB_SNK RGB_M_SN // Snake Animation alias
+#define GUIBSPC GUI_T(KC_BSPC) // GUI when held, BSPC when tapped.
+#define RGB_SWR RGB_M_SW // Swirl Animation alias
+#define RGB_SNK RGB_M_SN // Snake Animation alias
+// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@@ -47,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,\
KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \
-),
+ ),
/* Colemak
* ,-----------------------------------------------------------------------------------.
@@ -65,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, \
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \
-),
+ ),
/* Dvorak
* ,-----------------------------------------------------------------------------------.
@@ -83,7 +64,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, \
KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, \
KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \
-),
+ ),
/* Lower
* ,-----------------------------------------------------------------------------------.
@@ -101,7 +82,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, \
_______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, \
BL_STEP, _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______ \
-),
+ ),
/* Raise
* ,-----------------------------------------------------------------------------------.
@@ -119,7 +100,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, \
_______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, \
BL_STEP, _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______ \
-),
+ ),
/* Adjust (Lower + Raise)
* ,-----------------------------------------------------------------------------------.
@@ -137,77 +118,41 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, RESET, RGB_M_P, RGB_M_B, RGB_M_R, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, \
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, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
-)
-
-
+ )
};
+// clang-format on
-void persistent_default_layer_set(uint16_t default_layer) {
- eeconfig_update_default_layer(default_layer);
- default_layer_set(default_layer);
-}
+#ifdef AUDIO_ENABLE
+float tone_qwerty[][2] = SONG(QWERTY_SOUND);
+float tone_dvorak[][2] = SONG(DVORAK_SOUND);
+float tone_colemak[][2] = SONG(COLEMAK_SOUND);
+#endif
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);
+ // This will disable the red LEDs on the ProMicros
+ setPinInput(D5);
+ writePinLow(D5);
+ setPinInput(B0);
+ writePinLow(B0);
#endif
};
+layer_state_t layer_state_set_user(layer_state_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 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 BACKLIT:
- if (record->event.pressed) {
- register_code(KC_RSFT);
- #ifdef BACKLIGHT_ENABLE
- backlight_step();
- #endif
- } else {
- unregister_code(KC_RSFT);
- }
- return false;
- break; */
- }
- return true;
-}
+ if (record->event.pressed) {
+ switch (keycode) {
+ case QWERTY:
+ set_single_persistent_default_layer(_QWERTY);
+ return false;
+ case COLEMAK:
+ set_single_persistent_default_layer(_COLEMAK);
+ return false;
+ case DVORAK:
+ set_single_persistent_default_layer(_DVORAK);
+ return false;
+ }
+ }
+ return true;
+}
\ No newline at end of file
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
## Still to do:
+ * Update layout files to match current standards.
* Enjoy this revision; figure out new things later.
### 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 @@
#include QMK_KEYBOARD_H
-#include "action_layer.h"
-#include "eeconfig.h"
-extern keymap_config_t keymap_config;
+enum layer_names { _QWERTY, _COLEMAK, _DVORAK, _LOWER, _RAISE, _ADJUST };
-// 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 _QWERTY 0
-#define _COLEMAK 1
-#define _DVORAK 2
-#define _LOWER 3
-#define _RAISE 4
-#define _ADJUST 16
-
-enum custom_keycodes {
- QWERTY = SAFE_RANGE,
- COLEMAK,
- DVORAK,
- LOWER,
- RAISE,
- ADJUST,
-};
+enum custom_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK, LOWER, RAISE, ADJUST };
// Aliases to keep the keymap tidy
-#define GUIBSPC GUI_T(KC_BSPC) // GUI when held, BSPC when tapped.
-#define RGB_SWR RGB_M_SW // Swirl Animation alias
-#define RGB_SNK RGB_M_SN // Snake Animation alias
+#define GUIBSPC GUI_T(KC_BSPC) // GUI when held, BSPC when tapped.
+#define RGB_SWR RGB_M_SW // Swirl Animation alias
+#define RGB_SNK RGB_M_SN // Snake Animation alias
+// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@@ -50,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \
-),
+ ),
/* Colemak
* ,-----------------------------------------------------------------------------------.
@@ -71,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, \
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \
-),
+ ),
/* Dvorak
* ,-----------------------------------------------------------------------------------.
@@ -92,7 +73,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, \
KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, \
KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, GUIBSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT \
-),
+ ),
/* Lower
* ,-----------------------------------------------------------------------------------.
@@ -113,7 +94,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, KC_PLUS, KC_LCBR, KC_RCBR, _______, \
_______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, \
BL_STEP, _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______ \
-),
+ ),
/* Raise
* ,-----------------------------------------------------------------------------------.
@@ -134,7 +115,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, KC_EQL, KC_LBRC, KC_RBRC, _______, \
_______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, \
BL_STEP, _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______ \
-),
+ ),
/* Adjust (Lower + Raise)
* ,-----------------------------------------------------------------------------------.
@@ -155,92 +136,42 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, RGB_M_P, RGB_M_B, RGB_M_R, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, \
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, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
-)
-
-
+ )
};
+// clang-format on
+
#ifdef AUDIO_ENABLE
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_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) {
#ifdef BOOTLOADER_CATERINA
- // This will disable the red LEDs on the ProMicros
- DDRD &= ~(1<<5);
- PORTD &= ~(1<<5);
- DDRB &= ~(1<<0);
- PORTB &= ~(1<<0);
+ // This will disable the red LEDs on the ProMicros
+ setPinInput(D5);
+ writePinLow(D5);
+ setPinInput(B0);
+ writePinLow(B0);
#endif
};
+layer_state_t layer_state_set_user(layer_state_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_NOTE_ARRAY(tone_qwerty, false, 0);
- #endif
- persistent_default_layer_set(1UL<<_QWERTY);
- }
- return false;
- break;
- case COLEMAK:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- PLAY_NOTE_ARRAY(tone_colemak, false, 0);
- #endif
- persistent_default_layer_set(1UL<<_COLEMAK);
- }
- return false;
- break;
- case DVORAK:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- PLAY_NOTE_ARRAY(tone_dvorak, false, 0);
- #endif
- persistent_default_layer_set(1UL<<_DVORAK);
- }
- 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 BACKLIT:
- if (record->event.pressed) {
- register_code(KC_RSFT);
- #ifdef BACKLIGHT_ENABLE
- backlight_step();
- #endif
- } else {
- unregister_code(KC_RSFT);
- }
- return false;
- break; */
- }
- return true;
-}
+ if (record->event.pressed) {
+ switch (keycode) {
+ case QWERTY:
+ set_single_persistent_default_layer(_QWERTY);
+ return false;
+ case COLEMAK:
+ set_single_persistent_default_layer(_COLEMAK);
+ return false;
+ case DVORAK:
+ set_single_persistent_default_layer(_DVORAK);
+ return false;
+ }
+ }
+ return true;
+}
\ No newline at end of file
diff --git a/keyboards/phantom/keymaps/xyverz/keymap.c b/layouts/community/tkl_ansi/xyverz/keymap.c
similarity index 76%
rename from keyboards/phantom/keymaps/xyverz/keymap.c
rename to 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 @@
#include QMK_KEYBOARD_H
-extern keymap_config_t keymap_config;
+enum layer_names {
+ _QW,
+ _DV,
+ _CM,
+ _FL,
+};
+enum planck_keycodes { DVORAK = SAFE_RANGE, QWERTY, COLEMAK };
-// Used for SHIFT_ESC
-#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
-
-// 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 _QW 0
-#define _DV 1
-#define _CM 2
-#define _FL 3
-
-// Macro name shortcuts
-#define QWERTY M(_QW)
-#define DVORAK M(_DV)
-#define COLEMAK M(_CM)
-
+// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QW] = LAYOUT_tkl_ansi( /* Layer 0: Qwerty */ \
@@ -59,34 +49,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
};
+// clang-format on
-enum function_id {
- SHIFT_ESC,
-};
-
-void persistent_default_layer_set(uint16_t default_layer) {
- eeconfig_update_default_layer(default_layer);
- default_layer_set(default_layer);
-}
-
-const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
-{
- switch(id) {
- case _DV:
- if (record->event.pressed) {
- persistent_default_layer_set(1UL<<_DV);
- }
- break;
- case _QW:
- if (record->event.pressed) {
- persistent_default_layer_set(1UL<<_QW);
- }
- break;
- case _CM:
- if (record->event.pressed) {
- persistent_default_layer_set(1UL<<_CM);
- }
- break;
- }
- return MACRO_NONE;
-};
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ if (record->event.pressed) {
+ switch (keycode) {
+ case DVORAK:
+ set_single_persistent_default_layer(_DV);
+ return false;
+ case QWERTY:
+ set_single_persistent_default_layer(_QW);
+ return false;
+ case COLEMAK:
+ set_single_persistent_default_layer(_CM);
+ return false;
+ }
+ }
+ return true;
+}
\ No newline at end of file
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.