aboutsummaryrefslogtreecommitdiff
path: root/layouts
diff options
context:
space:
mode:
authorQMK Bot <hello@qmk.fm>2021-08-14 01:15:07 +0000
committerQMK Bot <hello@qmk.fm>2021-08-14 01:15:07 +0000
commite80772da401e545887b84b8addc4169b090cfa3e (patch)
tree5bc04994077f4e34b1f1c50bd9e42c4e413b8e32 /layouts
parent1412a785ed012f7c2695632fc48ef080fc440f80 (diff)
parentade989962af613b24687f20f54e2dd0e37240216 (diff)
downloadqmk_firmware-e80772da401e545887b84b8addc4169b090cfa3e.tar.gz
qmk_firmware-e80772da401e545887b84b8addc4169b090cfa3e.zip
Merge remote-tracking branch 'origin/master' into develop
Diffstat (limited to 'layouts')
-rw-r--r--layouts/community/ergodox/replicaJunction/config.h60
-rw-r--r--layouts/community/ergodox/replicaJunction/keymap.c725
-rw-r--r--layouts/community/ergodox/replicaJunction/readme.md93
-rw-r--r--layouts/community/ergodox/replicaJunction/rules.mk35
4 files changed, 419 insertions, 494 deletions
diff --git a/layouts/community/ergodox/replicaJunction/config.h b/layouts/community/ergodox/replicaJunction/config.h
index 9ffd74dcc..a02f9a95d 100644
--- a/layouts/community/ergodox/replicaJunction/config.h
+++ b/layouts/community/ergodox/replicaJunction/config.h
@@ -1,13 +1,51 @@
1/* Copyright 2021 Joshua T.
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
1#pragma once 17#pragma once
2 18
3// Layer definitions 19// Do not allow one macro to contain the other macro
4 20#define DYNAMIC_MACRO_NO_NESTING
5#define L_COLEMAK 0 21
6#define L_QWERTY 1 22// "THE most important tap hold configuration setting"
7#define L_NUM 2 23// https://precondition.github.io/home-row-mods#ignore-mod-tap-interrupt
8#define L_EXTEND 3 24// https://docs.qmk.fm/#/tap_hold?id=ignore-mod-tap-interrupt
9#define L_FUNC 4 25#define IGNORE_MOD_TAP_INTERRUPT
10#define L_GAMING 5 26
11#define L_LL_R 6 27// This one is a style choice. Play with it both on and off to see which
12#define L_LL_E 7 28// one suits you better.
13#define L_LL_I 8 29// https://precondition.github.io/home-row-mods#permissive-hold
30// https://docs.qmk.fm/#/tap_hold?id=permissive-hold
31#define PERMISSIVE_HOLD
32
33// If you press a dual-role key for longer than TAPPING_TERM, then
34// release it without pressing another key, without this setting nothing
35// would happen. With this setting, it sends the key's tap function.
36// https://precondition.github.io/home-row-mods#retro-tapping
37#define RETRO_TAPPING
38
39// Disable some unused features to save space
40#undef LOCKING_SUPPORT_ENABLE
41#undef LOCKING_RESYNC_ENABLE
42
43/////
44// Flags for stuff in my userspace
45
46#define USER_INCLUDE_GAMING_LAYER
47#define USER_INCLUDE_MACRO_LAYER
48
49// "Super Alt-Tab"
50// https://docs.qmk.fm/#/feature_macros?id=super-alt%E2%86%AFtab
51#define USER_SUPER_ALT_TAB_TIMEOUT 500
diff --git a/layouts/community/ergodox/replicaJunction/keymap.c b/layouts/community/ergodox/replicaJunction/keymap.c
index ce0400be5..0c36abcf7 100644
--- a/layouts/community/ergodox/replicaJunction/keymap.c
+++ b/layouts/community/ergodox/replicaJunction/keymap.c
@@ -1,427 +1,378 @@
1/* 1/* Copyright 2021 Joshua T.
2 * Keyboard: Ergodox 2 *
3 * Keymap: replicaJunction 3 * This program is free software: you can redistribute it and/or modify
4 * Version: 2.1 4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
5 */ 15 */
6 16
7#include QMK_KEYBOARD_H 17#include QMK_KEYBOARD_H
8#include "config.h"
9#include "replicaJunction.h" 18#include "replicaJunction.h"
10 19
11const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 20// Most layers are defined in my userspace, but this keyboard has
21// an extra one.
22enum additional_keyboard_layers {
23 L_SYSLEDS = _LAYER_SAFE_RANGE
24};
12 25
13[L_COLEMAK] = LAYOUT_ergodox( 26#define BSP_SYM LT(L_SYMBOLS, KC_BSPC)
14//--------|--------|--------|--------|--------|--------|--------| 27#define SPC_NAV LT(L_NAVIGATION, KC_SPC)
15 KC_ESC ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 ,KC_GRV ,
16//--------|--------|--------|--------|--------|--------|--------|
17 KX_ECTL ,KC_Q ,KC_W ,KC_F ,KC_P ,KC_B ,KC_LBRC ,
18//--------|--------|--------|--------|--------|--------|--------|
19 KC_TAB ,KC_A ,KC_R_LT ,KC_S_LT ,KC_T ,KC_G,
20//--------|--------|--------|--------|--------|--------|--------|
21 KC_LSFT ,KX_Z_MT ,KX_X_MT ,KX_C_MT ,KX_D_MT ,KC_V ,KC_RBRC ,
22//--------|--------|--------|--------|--------|--------|--------|
23 TD_LAYR ,KC_LGUI ,KC_HYPR ,KX_CTSF ,KC_LCTL ,
24//--------|--------|--------|--------|--------|--------|--------|
25 KC_HOME ,KC_END ,
26// |--------|--------|
27 KC_PGUP ,
28// |--------|--------|--------|
29 KX_BKNM ,KX_DCTL ,KC_PGDN ,
30// |--------|--------|--------|
31
32//--------|--------|--------|--------|--------|--------|-------|
33 TG_GAME ,KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_EQL ,
34//--------|--------|--------|--------|--------|--------|-------|
35 KC_DEL ,KC_J ,KC_L ,KC_U ,KC_Y ,KC_SCLN ,KC_BSLS,
36//--------|--------|--------|--------|--------|--------|-------|
37 KC_M ,KC_N ,KC_E_LT ,KC_I_LT ,KC_O ,KC_QUOT,
38//--------|--------|--------|--------|--------|--------|-------|
39 KC_LOCK ,KC_K ,KX_H_MT ,KX_COMT ,KX_DOMT ,KX_SLMT ,KC_RSFT,
40//--------|--------|--------|--------|--------|--------|-------|
41 KC_LALT ,KC_MINS ,KC_QUOT ,KC_EQL ,TT_NUM ,
42//--------|--------|--------|--------|--------|--------|-------|
43 KC_LEFT ,KC_RGHT ,
44//--------|--------|
45 KC_UP ,
46//--------|--------|--------|
47 KC_DOWN ,KX_NALT ,KX_SPAC
48//--------|--------|--------|
49 28
50), 29#define MO_FN MO(L_FN)
30#define MO_MAC MO(L_MACROS)
31#define MO_SLED MO(L_SYSLEDS)
32
33#define TG_GAME TG(L_GAMING)
34
35#define ESC_SFT LSFT_T(KC_ESC)
36#define TAB_SFT RSFT_T(KC_TAB)
51 37
52 38
39const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
40
53 41
54[L_QWERTY] = LAYOUT_ergodox( 42[L_BASE] = LAYOUT_ergodox(
55//--------|--------|--------|--------|--------|--------|--------| 43 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS,
56 _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , 44 KC_EQL, KC_Q, KC_W, KC_F, KC_P, KC_B, NUMWORD,
57//--------|--------|--------|--------|--------|--------|--------| 45 KC_MINS, KC_A, KC_R, KC_S, KC_T, KC_G,
58 _______ ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,_______ , 46 KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_RBRC,
59//--------|--------|--------|--------|--------|--------|--------| 47 KC_LCTL, KC_LGUI ,KC_LALT, MO_FN, ESC_SFT,
60 _______ ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G , 48 KC_HOME, KC_END,
61//--------|--------|--------|--------|--------|--------|--------| 49 KC_PGUP,
62 _______ ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,_______ , 50 BSP_SYM, CTL_DEL, KC_PGDN,
63//--------|--------|--------|--------|--------|--------|--------| 51
64 _______ ,_______ ,_______ ,_______ ,_______ , 52 TG_GAME, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL,
65//--------|--------|--------|--------|--------|--------|--------| 53 CAPWORD, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS,
66 _______ ,_______ , 54 KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
67// |--------|--------| 55 KC_LOCK, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
68 _______ , 56 TAB_SFT, MO_FN, KC_RALT, KC_RGUI, MO_SLED,
69// |--------|--------|--------| 57 KC_LEFT, KC_RGHT,
70 _______ ,_______ ,_______ , 58 KC_UP,
71// |--------|--------|--------| 59 KC_DOWN, ALT_ENT, SPC_NAV
72
73//--------|--------|--------|--------|--------|--------|--------|
74 _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,KC_EQL ,
75//--------|--------|--------|--------|--------|--------|--------|
76 _______ ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,_______ ,
77//--------|--------|--------|--------|--------|--------|--------|
78 KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN ,KC_QUOT ,
79//--------|--------|--------|--------|--------|--------|--------|
80 KC_LOCK ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_RSPC ,
81//--------|--------|--------|--------|--------|--------|--------|
82 KC_RALT ,KC_MINS ,KC_QUOT ,KC_EQL ,TT_NUM ,
83//--------|--------|--------|--------|--------|--------|--------|
84 KC_LEFT ,KC_RGHT ,
85//--------|--------|
86 KC_UP ,
87//--------|--------|--------|
88 KC_DOWN ,KX_NALT ,KX_SPAC
89//--------|--------|--------|
90), 60),
91 61
92 62
63[L_GAMING] = LAYOUT_ergodox(
64 KC_GRV, _______,_______,_______,_______,_______,_______,
65 KC_TAB, _______,_______,_______,_______,_______,_______,
66 KC_ESC, KC_A, KC_R, KC_S, KC_T, _______,
67 KC_LSFT,_______,_______,KC_C, KC_D, _______,_______,
68 _______,_______,KC_TAB, KC_LALT,KC_LCTL,
69 KC_LOCK,_______,
70 _______,
71 KC_SPC, KC_LSFT,_______,
72
73 ooooooo,_______,_______,_______,_______,_______,_______,
74 _______,_______,_______,_______,_______,_______,_______,
75 _______,KC_N, KC_E, KC_I, KC_O, _______,
76 _______,_______,_______,_______,_______,_______,_______,
77 MO_FN, KC_LEFT,KC_DOWN,KC_UP, KC_RGHT,
78 KC_BTN3,_______,
79 KC_BTN2,
80 KC_BTN1,KC_ENT, KC_BSPC
81),
82
93 83
94[L_NUM] = LAYOUT_ergodox( 84[L_NUMBERS] = LAYOUT_ergodox(
95//--------|--------|--------|--------|--------|--------|--------| 85 _______,_______,_______,_______,_______,_______,_______,
96 _______ ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,_______ , 86 _______,_______,_______,_______,_______,_______,_______,
97//--------|--------|--------|--------|--------|--------|--------| 87 _______,KC_LGUI,KC_LALT,KC_LSFT,KC_LCTL,_______,
98 _______ ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_SLSH ,_______ , 88 _______,_______,_______,_______,_______,_______,_______,
99//--------|--------|--------|--------|--------|--------|--------| 89 _______,_______,_______,_______,_______,
100 _______ ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_PIPE, 90 _______,_______,
101//--------|--------|--------|--------|--------|--------|--------| 91 _______,
102 _______ ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_BSLS ,_______ , 92 _______,_______,_______,
103//--------|--------|--------|--------|--------|--------|--------| 93
104 _______ ,_______ ,KC_AMPR ,KC_LABK ,KC_RABK, 94 _______,KC_NLCK,_______,_______,_______,_______,_______,
105//--------|--------|--------|--------|--------|--------|--------| 95 KC_NLCK,KC_HASH,KC_P7, KC_P8, KC_P9, KC_PSLS,SFT_TAB,
106 _______ ,_______ , 96 KC_PPLS,KC_P4, KC_P5, KC_P6, KC_PAST,KC_TAB,
107// |--------|--------| 97 _______,KC_PMNS,KC_P1, KC_P2, KC_P3, KC_BSLS,KC_EQL,
108 _______ , 98 KC_P0, KC_P0, KC_PDOT,KC_PENT,_______,
109// |--------|--------|--------| 99 _______,_______,
110 _______ ,_______ ,_______ , 100 _______,
111// |--------|--------|--------| 101 _______,_______,_______
112
113//--------|--------|--------|--------|--------|--------|--------|
114 _______ ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,
115//--------|--------|--------|--------|--------|--------|--------|
116 _______ ,KC_COLN ,KC_P7 ,KC_P8 ,KC_P9 ,KC_PSLS ,KC_F12 ,
117//--------|--------|--------|--------|--------|--------|--------|
118 KC_HASH ,KC_P4 ,KC_P5 ,KC_P6 ,KC_PAST ,KC_BSPC ,
119//--------|--------|--------|--------|--------|--------|--------|
120 _______ ,KC_BSPC ,KC_P1 ,KC_P2 ,KC_P3 ,KC_PMNS ,KC_TAB ,
121//--------|--------|--------|--------|--------|--------|--------|
122 KC_P0 ,KC_PDOT ,KC_PEQL ,KC_PPLS ,_______ ,
123//--------|--------|--------|--------|--------|--------|--------|
124 _______ ,_______ ,
125//--------|--------|
126 _______ ,
127//--------|--------|--------|
128 _______ ,KC_PENT ,MO_FUNC
129//--------|--------|--------|
130), 102),
131 103
132 104
105[L_SYMBOLS] = LAYOUT_ergodox(
106 _______,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______,
107 _______,KC_AT, KC_LT, KC_DLR, KC_GT, XXXXXXX,_______,
108 _______,KC_BSLS,KC_LPRN,KC_DQUO,KC_RPRN,KC_HASH,
109 _______,KC_EXLM,KC_COLN,KC_ASTR,KC_PLUS,XXXXXXX,_______,
110 _______,_______,_______,_______,_______,
111 _______,_______,
112 _______,
113 ooooooo,_______,_______,
114
115 _______,KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
116 _______,XXXXXXX,KC_LBRC,KC_UNDS,KC_RBRC,XXXXXXX,KC_F12,
117 KC_PERC,KC_LCBR,KC_EQL, KC_RCBR,KC_PIPE,_______,
118 _______,XXXXXXX,KC_AMPR,KC_CIRC,KC_TILD,KC_GRV, _______,
119 _______,_______,_______,_______,_______,
120 _______,_______,
121 _______,
122 _______,_______,ooooooo
123),
124
133 125
134[L_EXTEND] = LAYOUT_ergodox( 126[L_NAVIGATION] = LAYOUT_ergodox(
135//--------|--------|--------|--------|--------|--------|--------| 127 _______,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______,
136 _______ ,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, 128 _______,OS_UNDO,OS_CUT, OS_PAST,OS_COPY,OS_SALL,_______,
137//--------|--------|--------|--------|--------|--------|--------| 129 _______,KC_LGUI,KC_LSFT,KC_LALT,KC_LCTL,_______,
138 _______ ,_______ ,_______ ,_______ ,KC_APP ,KX_CGR, KC_VOLU, 130 _______,WIN_V, _______,_______,OS_FIND,SEARCH, _______,
139//--------|--------|--------|--------|--------|--------|--------| 131 _______,_______,_______,_______,_______,
140 _______ ,KC_LGUI, KC_LSFT, KC_LALT, KC_LCTL, _______ , 132 _______,_______,
141//--------|--------|--------|--------|--------|--------|--------| 133 _______,
142 _______ ,_______ ,_______ ,_______ ,KX_SRCH, KX_PAST, KC_VOLD, 134 _______,_______,_______,
143//--------|--------|--------|--------|--------|--------|--------| 135
144 _______ ,_______ ,_______ ,_______ ,_______ , 136 _______,KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
145//--------|--------|--------|--------|--------|--------|--------| 137 _______,KC_PGUP,KC_HOME,KC_UP, KC_END, KC_DEL, KC_F12,
146 _______ ,_______ , 138 KC_PGDN,KC_LEFT,KC_DOWN,KC_RGHT,KC_BSPC,_______,
147// |--------|--------|--------| 139 _______,_______,SFT_TAB,KC_TAB, KC_APP, KC_PSCR,_______,
148 _______ , 140 _______,_______,_______,_______,_______,
149// |--------|--------|--------| 141 _______,_______,
150 MO_FUNC, _______ ,_______ , 142 _______,
151// |--------|--------|--------| 143 _______,_______,ooooooo
152
153//--------|--------|--------|--------|--------|--------|--------|
154 KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______ ,
155//--------|--------|--------|--------|--------|--------|--------|
156 _______ ,KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, _______ ,
157//--------|--------|--------|--------|--------|--------|--------|
158 KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_MENU,
159//--------|--------|--------|--------|--------|--------|--------|
160 _______ ,_______ ,KX_STAB, KC_TAB, _______ ,KC_INS, KC_PSCR,
161//--------|--------|--------|--------|--------|--------|--------|
162 _______ ,_______ ,_______ ,KC_PSCR, _______ ,
163//--------|--------|--------|--------|--------|--------|--------|
164 _______ ,_______ ,
165//--------|--------|--------|--------|--------|--------|--------|
166 _______ ,
167//--------|--------|--------|--------|--------|--------|--------|
168 _______ ,_______ ,_______
169//--------|--------|--------|--------|--------|--------|--------|
170), 144),
171 145
172 146
147[L_FN] = LAYOUT_ergodox(
148 _______,_______,_______,_______,_______,_______,_______,
149 _______,QK_VERS,_______,DM_REC2,DM_REC1,DM_RSTP,_______,
150 _______,QK_MAKE,_______,DM_PLY2,DM_PLY1,_______,
151 _______,QK_FLSH,K_SECR1,K_SECR2,K_SECR3,K_SECR4,_______,
152 _______,_______,_______,ooooooo,_______,
153 _______,_______,
154 _______,
155 KC_LCTL,_______,_______,
156
157 _______,_______,_______,_______,_______,_______,_______,
158 _______,KC_VOLU,KC_F9, KC_F10, KC_F11, KC_F12, _______,
159 KC_MUTE,KC_F5, KC_F6, KC_F7, KC_F8, _______,
160 _______,KC_VOLD,KC_F1, KC_F2, KC_F3, KC_F4, _______,
161 _______,ooooooo,_______,_______,_______,
162 _______,RESET,
163 _______,
164 _______,_______,KC_LALT
165),
173 166
174[L_FUNC] = LAYOUT_ergodox( 167
175//--------|--------|--------|--------|--------|--------|--------| 168[L_MACROS] = LAYOUT_ergodox(
176 _______ ,KC_F11 ,KC_F12 ,KC_F13 ,KC_F14 ,KC_F15 ,_______ , 169 _______,_______,_______,_______,_______,_______,_______,
177//--------|--------|--------|--------|--------|--------|--------| 170 _______,_______,_______,DM_REC2,DM_REC1,_______,_______,
178 _______ ,_______ ,_______ ,M_LCLIK, M_RCLIK, M_MCLIK, _______ , 171 _______,_______,_______,DM_PLY2,DM_PLY1,DM_RSTP,
179//--------|--------|--------|--------|--------|--------|--------| 172 _______,_______,_______,_______,_______,_______,_______,
180 _______ ,KC_LGUI, KC_LSFT, KC_LALT, KC_LCTL, M_WHLUP, 173 _______,_______,_______,_______,_______,
181//--------|--------|--------|--------|--------|--------|--------| 174 _______,_______,
182 _______ ,M_LEFT, M_DOWN, M_UP ,M_RIGHT, M_WHLDN, _______ , 175 _______,
183//--------|--------|--------|--------|--------|--------|--------| 176 ooooooo,_______,_______,
184 _______ ,_______ ,_______ ,_______ ,_______ , 177
185//--------|--------|--------|--------|--------|--------|--------| 178 _______,_______,_______,_______,_______,_______,_______,
186 _______ ,_______ , 179 _______,_______,SHEBANG,_______,_______,_______,_______,
187// |--------|--------|--------| 180 PRG_NE, PRG_EQ, PRG_GEQ,PRG_LEQ,PRG_ARR,_______,
188 _______ , 181 _______,_______,PS_ITEM,FS_PIPE,_______,FS_ARR, _______,
189// |--------|--------|--------| 182 _______,_______,_______,_______,_______,
190 _______ ,_______ ,_______ , 183 _______,_______,
191// |--------|--------|--------| 184 _______,
192 185 _______,_______,ooooooo
193//--------|--------|--------|--------|--------|--------|--------|
194 _______ ,KC_F16 ,KC_F17 ,KC_F18 ,KC_F19 ,KC_F20 ,_______ ,
195//--------|--------|--------|--------|--------|--------|--------|
196 _______ ,KC_VOLU, KC_F9, KC_F10, KC_F11, KC_F12, _______ ,
197//--------|--------|--------|--------|--------|--------|--------|
198 KC_MUTE, KC_F5, KC_F6, KC_F7, KC_F8, _______ ,
199//--------|--------|--------|--------|--------|--------|--------|
200 _______ ,KC_VOLD, KC_F1, KC_F2, KC_F3, KC_F4, _______ ,
201//--------|--------|--------|--------|--------|--------|--------|
202 _______ ,_______ ,_______ ,_______ ,_______ ,
203//--------|--------|--------|--------|--------|--------|--------|
204 _______ ,_______ ,
205//--------|--------|--------|--------|--------|--------|--------|
206 _______ ,
207//--------|--------|--------|--------|--------|--------|--------|
208 _______ ,_______ ,_______
209//--------|--------|--------|--------|--------|--------|--------|
210), 186),
211 187
212 188
213 189
214[L_GAMING] = LAYOUT_ergodox( 190[L_SYSLEDS] = LAYOUT_ergodox(
215//--------|--------|--------|--------|--------|--------|--------| 191 _______,_______,_______,_______,_______,_______,_______,
216 _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , 192 _______,_______,_______,_______,_______,_______,_______,
217//--------|--------|--------|--------|--------|--------|--------| 193 _______,_______,_______,_______,_______,_______,
218 KC_ESC ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ , 194 _______,_______,_______,_______,_______,_______,_______,
219//--------|--------|--------|--------|--------|--------|--------| 195 _______,_______,_______,_______,_______,
220 _______ ,_______ ,KC_R ,KC_S ,_______ ,_______ , 196 _______,_______,
221//--------|--------|--------|--------|--------|--------|--------| 197 _______,
222 KC_LSFT, _______ ,_______ ,_______ ,_______ ,_______ ,_______ , 198 _______,_______,_______,
223//--------|--------|--------|--------|--------|--------|--------| 199
224 _______ ,_______ ,_______ ,KC_LALT ,KC_LCTL , 200 KC_NLCK,_______,_______,_______,_______,_______,_______,
225//--------|--------|--------|--------|--------|--------|--------| 201 KC_CAPS,_______,_______,_______,_______,_______,_______,
226 _______ ,_______ , 202 _______,_______,_______,_______,_______,_______,
227// |--------|--------| 203 KC_SLCK,_______,_______,_______,_______,_______,_______,
228 _______ , 204 _______,_______,_______,_______,ooooooo,
229// |--------|--------|--------| 205 _______,_______,
230 KC_SPC, KC_LSFT, _______ , 206 _______,
231// |--------|--------|--------| 207 _______,_______,_______
232
233//--------|--------|--------|--------|--------|--------|--------|
234 _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
235//--------|--------|--------|--------|--------|--------|--------|
236 _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
237//--------|--------|--------|--------|--------|--------|--------|
238 _______ ,_______ ,KC_E ,KC_I ,_______ ,_______ ,
239//--------|--------|--------|--------|--------|--------|--------|
240 _______ ,_______ ,_______ ,_______ ,_______ ,KC_UP, KC_SLSH,
241//--------|--------|--------|--------|--------|--------|--------|
242 _______ ,_______ ,KC_LEFT, KC_DOWN, KC_RGHT,
243//--------|--------|--------|--------|--------|--------|--------|
244 M_MCLIK ,_______ ,
245//--------|--------|--------|--------|--------|--------|--------|
246 M_RCLIK ,
247//--------|--------|--------|--------|--------|--------|--------|
248 M_LCLIK ,KC_ENT ,KC_BSPC
249//--------|--------|--------|--------|--------|--------|--------|
250)
251,
252
253// "Letter Layers"
254
255[L_LL_R] = LAYOUT_ergodox(
256//--------|--------|--------|--------|--------|--------|--------|
257 _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
258//--------|--------|--------|--------|--------|--------|--------|
259 _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
260//--------|--------|--------|--------|--------|--------|--------|
261 _______ ,_______ ,ooooooo ,KC_AMPR ,KC_PIPE ,_______ ,
262//--------|--------|--------|--------|--------|--------|--------|
263 _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
264//--------|--------|--------|--------|--------|--------|--------|
265 _______ ,_______ ,_______ ,_______ ,_______ ,
266//--------|--------|--------|--------|--------|--------|--------|
267 _______ ,_______ ,
268// |--------|--------|
269 _______ ,
270// |--------|--------|--------|
271 _______ ,_______ ,_______ ,
272// |--------|--------|--------|
273
274//--------|--------|--------|--------|--------|--------|--------|
275 _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
276//--------|--------|--------|--------|--------|--------|--------|
277 _______ ,KC_COLN ,KC_P7 ,KC_P8 ,KC_P9 ,KC_PSLS ,_______ ,
278//--------|--------|--------|--------|--------|--------|--------|
279 KC_HASH ,KC_P4 ,KC_P5 ,KC_P6 ,KC_PAST ,KC_TAB ,
280//--------|--------|--------|--------|--------|--------|--------|
281 _______ ,KC_BSPC ,KC_P1 ,KC_P2 ,KC_P3 ,KC_PMNS ,_______ ,
282//--------|--------|--------|--------|--------|--------|--------|
283 KC_P0 ,KC_PDOT ,KC_PEQL ,KC_PPLS ,_______ ,
284//--------|--------|--------|--------|--------|--------|--------|
285 _______ ,_______ ,
286//--------|--------|
287 _______ ,
288//--------|--------|--------|
289 _______ ,KC_PENT ,MO_FUNC
290//--------|--------|--------|
291)
292,
293
294[L_LL_E] = LAYOUT_ergodox(
295//--------|--------|--------|--------|--------|--------|--------|
296 _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
297//--------|--------|--------|--------|--------|--------|--------|
298 RJ_QMKV ,RJ_MAKE ,RJ_EQ ,RJ_LEQ ,RJ_GEQ ,RJ_GEQR ,_______ ,
299//--------|--------|--------|--------|--------|--------|--------|
300 _______ ,_______ ,_______ ,RJ_SELS ,RJ_DUND ,_______ ,
301//--------|--------|--------|--------|--------|--------|--------|
302 _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
303//--------|--------|--------|--------|--------|--------|--------|
304 _______ ,_______ ,_______ ,_______ ,_______ ,
305//--------|--------|--------|--------|--------|--------|--------|
306 _______ ,_______ ,
307// |--------|--------|
308 _______ ,
309// |--------|--------|--------|
310 _______ ,_______ ,_______ ,
311// |--------|--------|--------|
312
313//--------|--------|--------|--------|--------|--------|--------|
314 _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
315//--------|--------|--------|--------|--------|--------|--------|
316 _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
317//--------|--------|--------|--------|--------|--------|--------|
318 _______ ,_______ ,ooooooo ,_______ ,_______ ,_______ ,
319//--------|--------|--------|--------|--------|--------|--------|
320 _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
321//--------|--------|--------|--------|--------|--------|--------|
322 _______ ,_______ ,_______ ,_______ ,_______ ,
323//--------|--------|--------|--------|--------|--------|--------|
324 _______ ,_______ ,
325//--------|--------|
326 _______ ,
327//--------|--------|--------|
328 _______ ,_______ ,_______
329//--------|--------|--------|
330)
331,
332
333[L_LL_I] = LAYOUT_ergodox(
334//--------|--------|--------|--------|--------|--------|--------|
335 _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
336//--------|--------|--------|--------|--------|--------|--------|
337 _______ ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_SLSH ,_______ ,
338//--------|--------|--------|--------|--------|--------|--------|
339 _______ ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_PIPE,
340//--------|--------|--------|--------|--------|--------|--------|
341 _______ ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_BSLS ,_______ ,
342//--------|--------|--------|--------|--------|--------|--------|
343 _______ ,_______ ,KC_AMPR ,KC_LABK ,KC_RABK,
344//--------|--------|--------|--------|--------|--------|--------|
345 _______ ,_______ ,
346// |--------|--------|
347 _______ ,
348// |--------|--------|--------|
349 _______ ,_______ ,_______ ,
350// |--------|--------|--------|
351
352//--------|--------|--------|--------|--------|--------|--------|
353 _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
354//--------|--------|--------|--------|--------|--------|--------|
355 _______ ,_______ ,KC_UNDS, KC_GRV ,_______ ,_______ ,_______ ,
356//--------|--------|--------|--------|--------|--------|--------|
357 _______ ,KC_MINS ,KC_QUOT ,ooooooo ,_______ ,_______ ,
358//--------|--------|--------|--------|--------|--------|--------|
359 _______ ,_______ ,KC_TILD, KC_DQT ,_______ ,_______ ,_______ ,
360//--------|--------|--------|--------|--------|--------|--------|
361 _______ ,_______ ,_______ ,_______ ,_______ ,
362//--------|--------|--------|--------|--------|--------|--------|
363 _______ ,_______ ,
364//--------|--------|--------|--------|--------|--------|--------|
365 _______ ,
366//--------|--------|--------|--------|--------|--------|--------|
367 _______ ,_______ ,_______
368//--------|--------|--------|--------|--------|--------|--------|
369) 208)
370 209
210// Template
211// [_NUMBERS] = LAYOUT_ergodox(
212// _______,_______,_______,_______,_______,_______,_______,
213// _______,_______,_______,_______,_______,_______,_______,
214// _______,_______,_______,_______,_______,_______,
215// _______,_______,_______,_______,_______,_______,_______,
216// _______,_______,_______,_______,_______,
217// _______,_______,
218// _______,
219// _______,_______,_______,
220
221// _______,_______,_______,_______,_______,_______,_______,
222// _______,_______,_______,_______,_______,_______,_______,
223// _______,_______,_______,_______,_______,_______,
224// _______,_______,_______,_______,_______,_______,_______,
225// _______,_______,_______,_______,_______,
226// _______,_______,
227// _______,
228// _______,_______,_______
229// ),
371 230
372}; 231};
373 232
374// The normal QMK functions ending in _user are overridden in the 233void keyboard_post_init_user_kb(void) {
375// replicaJunction userspace. Those functions handle my global 234 ergodox_right_led_1_on();
376// settings, and redirect to these _keymap functions if something 235}
377// is unhandled. This allows me to keep most of my global preferences 236
378// in one place while still allowing keyboard-specific code. 237
238////////////////////////////////////////////////////////////
239// System LED code
240////////////////////////////////////////////////////////////
241
242// We need to track both the layer state and the system LED state in
243// order to update the LEDs appropriately when either one changes.
244// These are both represented as a bitmask.
245//
246// There is a global 'layer_state' variable but it is set after the call
247// to layer_state_set_user(), so it doesn't work properly for our
248// purposes.
249static uint32_t current_layer_state = 0;
250static uint8_t sys_led_state = 0;
251
252// Whether the given layer (one of the constant defined at the top) is active.
253#define LAYER_ON(state, layer) (state & (1<<layer))
254
255// Brightness of LEDs (0-255)
256// Default value is 255. Use a lesser value for dimmer LEDs.
257static const uint8_t max_led_value = 255;
258
259void led_1_on(void) {
260 ergodox_right_led_1_on();
261 ergodox_right_led_1_set(max_led_value);
262}
263
264void led_2_on(void) {
265 ergodox_right_led_2_on();
266 ergodox_right_led_2_set(max_led_value);
267}
268
269void led_3_on(void) {
270 ergodox_right_led_3_on();
271 ergodox_right_led_3_set(max_led_value);
272}
273
274// The onboard LED doesn't support brightness, but this function keeps
275// things consistent.
276void led_board_on(void) {
277 ergodox_board_led_on();
278}
279
280void led_1_off(void) {
281 ergodox_right_led_1_off();
282}
283
284void led_2_off(void) {
285 ergodox_right_led_2_off();
286}
287
288void led_3_off(void) {
289 ergodox_right_led_3_off();
290}
291
292void led_board_off(void) {
293 ergodox_board_led_off();
294}
379 295
380// The idea was shamelessly copied from the amazing Drashna. 296void set_leds_by_system_state(uint8_t led_state) {
297 led_t host_led_state = host_keyboard_led_state();
381 298
382// Nothing to do here, so I've commented it out. 299 if (led_state & host_led_state.num_lock) {
383// bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { 300 led_1_on();
384// return true; 301 }
385// } 302 else {
303 led_1_off();
304 }
305
306 if (led_state & host_led_state.caps_lock) {
307 led_2_on();
308 }
309 else {
310 led_2_off();
311 }
312
313 if (led_state & host_led_state.scroll_lock) {
314 led_3_on();
315 }
316 else {
317 led_3_off();
318 }
319}
320
321void set_leds_by_layer_state(uint32_t layer_state) {
322 if (LAYER_ON(layer_state, L_FN)) {
323 led_1_on();
324 led_2_on();
325 led_3_on();
326 led_board_off();
327 }
328 else if (LAYER_ON(layer_state, L_GAMING)) {
329 led_1_off();
330 led_2_off();
331 led_3_off();
332 led_board_on();
333 }
334 else if (LAYER_ON(layer_state, L_NUMBERS)) {
335 led_1_on();
336 led_2_off();
337 led_3_off();
338 led_board_off();
339 }
340 else if (LAYER_ON(layer_state, L_NAVIGATION)) {
341 led_1_off();
342 led_2_on();
343 led_3_off();
344 led_board_off();
345 }
346 else {
347 led_1_on();
348 led_2_off();
349 led_3_off();
350 led_board_off();
351 }
352}
386 353
387// void matrix_init_keymap(void) {}; 354void led_set_kb(uint8_t usb_led) {
355 sys_led_state = usb_led;
388 356
389void matrix_scan_keymap(void) { 357 if (LAYER_ON(current_layer_state, L_SYSLEDS)) {
358 set_leds_by_system_state(sys_led_state);
359 }
360 else {
361 set_leds_by_layer_state(current_layer_state);
362 }
390 363
391 uint8_t layer = biton32(layer_state); 364 led_set_user(usb_led);
392 // uint8_t default_layer = biton32(layer_state); 365}
393 366
394 ergodox_board_led_off(); 367layer_state_t layer_state_set_kb(layer_state_t state) {
368 current_layer_state = state;
395 369
396 switch (layer) { 370 if (LAYER_ON(state, L_SYSLEDS)) {
397 case L_COLEMAK: 371 set_leds_by_system_state(sys_led_state);
398 ergodox_right_led_1_on(); 372 }
399 ergodox_right_led_2_off(); 373 else {
400 ergodox_right_led_3_off(); 374 set_leds_by_layer_state(state);
401 break;
402 case L_NUM:
403 ergodox_right_led_1_on();
404 ergodox_right_led_2_on();
405 ergodox_right_led_3_off();
406 break;
407 case L_EXTEND:
408 ergodox_right_led_1_on();
409 ergodox_right_led_2_off();
410 ergodox_right_led_3_on();
411 break;
412 case L_FUNC:
413 ergodox_right_led_1_on();
414 ergodox_right_led_2_on();
415 ergodox_right_led_3_on();
416 break;
417 case L_GAMING:
418 ergodox_right_led_1_off();
419 ergodox_right_led_2_on();
420 ergodox_right_led_3_on();
421 break;
422 default:
423 // none
424 break;
425 } 375 }
426 376
427}; 377 return update_tri_layer_state(state, L_SYMBOLS, L_NAVIGATION, L_MACROS);
378}
diff --git a/layouts/community/ergodox/replicaJunction/readme.md b/layouts/community/ergodox/replicaJunction/readme.md
index 9a1c09550..57e448047 100644
--- a/layouts/community/ergodox/replicaJunction/readme.md
+++ b/layouts/community/ergodox/replicaJunction/readme.md
@@ -1,94 +1,5 @@
1# replicaJunction - Ergodox (EZ) Layout 1# replicaJunction - Ergodox (EZ) Layout
2 2
3This keymap is designed to complement my Atreus keyboard layout, found in keyboards/atreus. The Atreus keyboard is a 40% board whose design was heavily influenced by the Ergodox. Since I use both keyboards, I've designed these layouts in an effort to make switching between the two as easy as possible. 3Most of the goodies in this layout are defined in [my userspace folder](../../../../users/replicaJunction/readme.md). Better explanations of the interesting features are provided there.
4 4
5I've also tried to make use of the extra keys on the Ergodox in as logical of a manner as possible, adding to the layers in the Atreus config without disturbing what's there already. This allows for things like F11-F20, the Application (Menu) key, and better media key placement. 5One feature is worth pointing out here, since it's keyboard-specific: handling of the LEDs. Normally, I use the LEDs to indicate layer state, but it's occasionally useful to be able to view the system state as well (num lock, caps lock, scroll lock). The final layer in the keymap, `L_SYSLEDS`, is used to indicate this. I have a MO key that temporarily switches the LED behavior to show system state, and on this layer, the three keys with LEDs are each used to toggle the respective lock.
6
7Because of this design philosophy, there are several cases where functionality is duplicated and keys are available in more than one place. I don't find that a bad thing.
8
9This layout makes heavy use of dual-role keys. Dual-role keys seemed to affect my typing speed for quite some time until I discovered the [`USE_PERMISSIVE_HOLD` flag](https://docs.qmk.fm/features/advanced-keycodes#permissive-hold). After applying this flag, I haven't had an issue with dual-role keys and typing quickly.
10
11The default letter layout in this keymap is [Colemak-ModDH](https://colemakmods.github.io/mod-dh/). I use the "matrix version" of that layout, which retains the M key on the home row as in normal Colemak.
12
13## Design Goals
14
15I designed this layout with the following goals in mind:
16
17* Atreus layout compatibility.
18* Nothing may interfere with ordinary typing.
19* Symbols need to be accessible quickly and organized in a manner I can remember.
20* Limit more difficult finger movements (and pinky usage in general).
21* Gaming should be easy.
22
23### Atreus layout compatibility
24
25Most of the functionality in this layout isn't strictly necessary - the Ergodox is a 76-key keyboard, and it's got plenty of room for extra keys and functionality compared to smaller boards like the Atreus. However, I've replicated a lot of 40% functionality on this layout in order to preserve my muscle memory.
26
27The biggest deviation is the Shift keys. My Atreus uses thumb keys for Shift, but the Ergodox doesn't have corresponding thumb keys in a comfortable enough location. I briefly tried using the outermost 1u keys in the bottom row as Shift keys, but they take a large enough thumb movement that it interfered with typing.
28
29### Nothing may interfere with ordinary typing
30
31For a long time, this meant that I couldn't use letters or home row keys as dual-role keys. I'm a fast typer, and I'm sometimes already typing the next letter before I've fully released the previous one. Normal keyboards don't care about this, but if I started adding dual-role functionality to letters, I found that I would sometimes type the next letter before releasing the layer toggle, and the letter I tried to send would still be sent under the layer I thought I'd left off.
32
33Fortunately, though, QMK has addressed this with the `PERMISSIVE_HOLD` flag. [Details are on the QMK docs page.](https://docs.qmk.fm/#/feature_advanced_keycodes?id=permissive-hold)
34
35Using that flag, I'm comfortable having layer shift keys on the home row, and this goes a long way to eliminate finger stress.
36
37### Sympols need to be accessible quickly
38
39Symbols are available under my left hand by holding the I key (on my right hand). I've grouped parenthesis, slashes, and braces together; the remaining symbols are ordered in the same way as they appear on USA keycap legends (for example, 1 is !, so that symbol is first in my lineup). Practically, I just had to get used to these other "misc" symbols.
40
41This also means that some symbols are accessible in more than one way. For example, the carats (greater than and less than) are available both in the "normal" location (Shift+Comma / Shift+Period) and on the symbol layer. I make regular changes to some of the symbols I don't use as commonly as I think of them.
42
43### Limit more difficult finger movements
44
45This is why I kept trying to put layer toggles on the home row keys instead of just placing them on random thumb keys. I suffer from RSI, and it's important for me to watch out for more "stressful" finger movements.
46
47The home row is the easiest row for your fingers to hit, followed by the upper row, and the lower row is noticeably more difficult to press. Because of this, I favored the upper row over the lower one any time I had the option to do so.
48
49### Gaming should be easy
50
51I've added a dedicated gaming layer accessible by pressing the upper-right key on the right hand (next to the 6 key). This layer disables most of the tap/hold functionality to allow keys to act normally. This layer also reverses Backspace and Space (so Space is available on the left thumb while the right hand is on the mouse).
52
53I've also added a lock key on the right hand's bottom 1.5u key and mouse keys on the right thumb cluster. This has been amazingly helpful for games that involve holding keys for extended times (for example, I can hold the left mouse button in Minecraft to continually mine).
54
55I strongly recommend using ESDF (QWERTY positions) for movement on the Ergodox rather than WASD. This makes the thumb keys much more accessible.
56
57Finally, I considered having the gaming layer revert to a QWERTY layout, but decided against it because it really threw me off when I needed to type in chat. I've accepted that I will need to rebind keys in most games as a reasonable compromise.
58
59## Features
60
61### ZXC Mods
62
63Keys on the bottom row of each half of this keyboard can be held to send modifier keys. I've tried to map this in a relatively logical manner:
64
65* Z / Slash: Ctrl
66* X / Period: GUI
67* C / Comma: Ctrl+Alt
68* D / H: Alt
69
70This is an example of maintaining compatibility with the Atreus layout. An Ergodox doesn't really need these keys, but I've grown accustomed to them on the Atreus, so they're copied here to preserve compatibility.
71
72### Layer Switching - Tap Dance
73
74The lower-left key on the left hand can be used to apply or remove layers based on a number of taps:
75
76* 1 tap sends Escape, and also disables any persistent layers.
77* 2 taps enables the Number pad layer.
78* 3 taps enables the QWERTY layer.
79* 5 or more taps resets the keyboard.
80
81## Extend Layer
82
83[Originally found on the Colemak forums](https://forum.colemak.com/topic/2014-extend-extra-extreme/), having a QMK-powered keyboard allows a super easy implementation of this concept. The idea is to place commonly-used keys under easy reach of your hands. Since I work with text often, my most common needs are things like Ctrl+Shift+arrow keys, and they're easy to access using this layer. (While technically it's four keypresses instead of just three, since it takes one key to enter the layer, that one key is a thumb button and the other three are all on the home row, so I find it much more comfortable than modifiers on a traditional keyboard.)
84
85Also featured in this layer is easy access to Tab, plus a Shift+Tab key. Alt-Tabbing back and forth, along with Ctrl-Tab, are super easy and friendly. When I need Ctrl+Alt+Delete, I typically use the ones found on this layer.
86
87## Credits
88
89* [Drashna](https://github.com/qmk/qmk_firmware/blob/master/users/drashna/readme.md)
90 * User / keymap function ideas
91* [Jeremy](https://github.com/qmk/qmk_firmware/blob/master/keyboards/atreus/keymaps/jeremy/readme.md)
92 * Sanity check on the Function keys (_of course they should be in rows of 4, not rows of 3 like a number pad. Why did I ever use anything else?_)
93* [DreymaR of the Colemak forums](https://forum.colemak.com/topic/2014-extend-extra-extreme/)
94 * Original idea of the Extend layer
diff --git a/layouts/community/ergodox/replicaJunction/rules.mk b/layouts/community/ergodox/replicaJunction/rules.mk
index 8a719766c..523639cc4 100644
--- a/layouts/community/ergodox/replicaJunction/rules.mk
+++ b/layouts/community/ergodox/replicaJunction/rules.mk
@@ -1,8 +1,33 @@
1# https://docs.qmk.fm/getting_started_make_guide.html 1# https://docs.qmk.fm/getting_started_make_guide.html
2 2
3MOUSEKEY_ENABLE = yes 3# Userspace options
4TAP_DANCE_ENABLE = yes 4USER_CAPS_WORD_ENABLE = yes
5USER_NUM_WORD_ENABLE = yes
6USER_SECRETS_ENABLE = yes
7USER_SUPER_ALT_TAB_ENABLE = yes
8
9# Features to enable
10DYNAMIC_MACRO_ENABLE = yes
5KEY_LOCK_ENABLE = yes 11KEY_LOCK_ENABLE = yes
6RGBLIGHT_ENABLE = no 12
7# CONSOLE_ENABLE = no 13# Extra features that are nice but takes space. Enable only if they're
8# COMMAND_ENABLE = no 14# used in the layout.
15WPM_ENABLE = no
16# EXTRAKEY_ENABLE = no # For volume keys and similar
17# MOUSEKEY_ENABLE = no # Them mouse keys yo
18KEY_OVERRIDE_ENABLE = no
19LEADER_ENABLE = no
20TAP_DANCE_ENABLE = no
21# RGBLIGHT_ENABLE = no # Keyboard RGB underglow
22RGB_MATRIX_ENABLE = no
23
24# Features I definitely don't care aboud
25LTO_ENABLE = yes
26CONSOLE_ENABLE = no
27VERBOSE = no
28DEBUG_MATRIX_SCAN_RATE = no
29DEBUG_MATRIX = no
30MAGIC_ENABLE = no
31SPACE_CADET_ENABLE = no
32GRAVE_ESC_ENABLE = no
33