@@ -126,7 +126,28 @@ enum { MACRO_VERSION_INFO,
126
126
*
127
127
*/
128
128
129
- enum { QWERTY, NUMPAD, FUNCTION }; // layers
129
+ enum { PRIMARY, NUMPAD, FUNCTION }; // layers
130
+
131
+
132
+ /* *
133
+ * To change your keyboard's layout from QWERTY to DVORAK or COLEMAK, comment out the line
134
+ *
135
+ * #define PRIMARY_KEYMAP_QWERTY
136
+ *
137
+ * by changing it to
138
+ *
139
+ * // #define PRIMARY_KEYMAP_QWERTY
140
+ *
141
+ * Then uncomment the line corresponding to the layout you want to use.
142
+ *
143
+ */
144
+
145
+ #define PRIMARY_KEYMAP_QWERTY
146
+ // #define PRIMARY_KEYMAP_COLEMAK
147
+ // #define PRIMARY_KEYMAP_DVORAK
148
+ // #define PRIMARY_KEYMAP_CUSTOM
149
+
150
+
130
151
131
152
/* This comment temporarily turns off astyle's indent enforcement
132
153
* so we can make the keymaps actually resemble the physical key layout better
@@ -135,7 +156,59 @@ enum { QWERTY, NUMPAD, FUNCTION }; // layers
135
156
136
157
KEYMAPS (
137
158
138
- [QWERTY] = KEYMAP_STACKED
159
+ #if defined (PRIMARY_KEYMAP_QWERTY)
160
+ [PRIMARY] = KEYMAP_STACKED
161
+ (___, Key_1, Key_2, Key_3, Key_4, Key_5, Key_LEDEffectNext,
162
+ Key_Backtick, Key_Q, Key_W, Key_E, Key_R, Key_T, Key_Tab,
163
+ Key_PageUp, Key_A, Key_S, Key_D, Key_F, Key_G,
164
+ Key_PageDown, Key_Z, Key_X, Key_C, Key_V, Key_B, Key_Escape,
165
+ Key_LeftControl, Key_Backspace, Key_LeftGui, Key_LeftShift,
166
+ ShiftToLayer (FUNCTION),
167
+
168
+ M(MACRO_ANY), Key_6, Key_7, Key_8, Key_9, Key_0, LockLayer(NUMPAD),
169
+ Key_Enter, Key_Y, Key_U, Key_I, Key_O, Key_P, Key_Equals,
170
+ Key_H, Key_J, Key_K, Key_L, Key_Semicolon, Key_Quote,
171
+ Key_RightAlt, Key_N, Key_M, Key_Comma, Key_Period, Key_Slash, Key_Minus,
172
+ Key_RightShift, Key_LeftAlt, Key_Spacebar, Key_RightControl,
173
+ ShiftToLayer(FUNCTION)),
174
+
175
+ #elif defined (PRIMARY_KEYMAP_DVORAK)
176
+
177
+ [PRIMARY] = KEYMAP_STACKED
178
+ (___, Key_1, Key_2, Key_3, Key_4, Key_5, Key_LEDEffectNext,
179
+ Key_Backtick, Key_Quote, Key_Comma, Key_Period, Key_P, Key_Y, Key_Tab,
180
+ Key_PageUp, Key_A, Key_O, Key_E, Key_U, Key_I,
181
+ Key_PageDown, Key_Semicolon, Key_Q, Key_J, Key_K, Key_X, Key_Escape,
182
+ Key_LeftControl, Key_Backspace, Key_LeftGui, Key_LeftShift,
183
+ ShiftToLayer (FUNCTION),
184
+
185
+ M(MACRO_ANY), Key_6, Key_7, Key_8, Key_9, Key_0, LockLayer(NUMPAD),
186
+ Key_Enter, Key_F, Key_G, Key_C, Key_R, Key_L, Key_Slash,
187
+ Key_D, Key_H, Key_T, Key_N, Key_S, Key_Minus,
188
+ Key_RightAlt, Key_B, Key_M, Key_W, Key_V, Key_Z, Key_Equals,
189
+ Key_RightShift, Key_LeftAlt, Key_Spacebar, Key_RightControl,
190
+ ShiftToLayer(FUNCTION)),
191
+
192
+ #elif defined (PRIMARY_KEYMAP_COLEMAK)
193
+
194
+ [PRIMARY] = KEYMAP_STACKED
195
+ (___, Key_1, Key_2, Key_3, Key_4, Key_5, Key_LEDEffectNext,
196
+ Key_Backtick, Key_Q, Key_W, Key_F, Key_P, Key_G, Key_Tab,
197
+ Key_PageUp, Key_A, Key_R, Key_S, Key_T, Key_D,
198
+ Key_PageDown, Key_Z, Key_X, Key_C, Key_V, Key_B, Key_Escape,
199
+ Key_LeftControl, Key_Backspace, Key_LeftGui, Key_LeftShift,
200
+ ShiftToLayer (FUNCTION),
201
+
202
+ M(MACRO_ANY), Key_6, Key_7, Key_8, Key_9, Key_0, LockLayer(NUMPAD),
203
+ Key_Enter, Key_J, Key_L, Key_U, Key_Y, Key_Semicolon, Key_Equals,
204
+ Key_H, Key_N, Key_E, Key_I, Key_O, Key_Quote,
205
+ Key_RightAlt, Key_K, Key_M, Key_Comma, Key_Period, Key_Slash, Key_Minus,
206
+ Key_RightShift, Key_LeftAlt, Key_Spacebar, Key_RightControl,
207
+ ShiftToLayer(FUNCTION)),
208
+
209
+ #elif defined (PRIMARY_KEYMAP_CUSTOM)
210
+ // Edit this keymap to make a custom layout
211
+ [PRIMARY] = KEYMAP_STACKED
139
212
(___, Key_1, Key_2, Key_3, Key_4, Key_5, Key_LEDEffectNext,
140
213
Key_Backtick, Key_Q, Key_W, Key_E, Key_R, Key_T, Key_Tab,
141
214
Key_PageUp, Key_A, Key_S, Key_D, Key_F, Key_G,
@@ -150,6 +223,13 @@ KEYMAPS(
150
223
Key_RightShift, Key_LeftAlt, Key_Spacebar, Key_RightControl,
151
224
ShiftToLayer(FUNCTION)),
152
225
226
+ #else
227
+
228
+ #error "No default keymap defined. You should make sure that you have a line like '#define PRIMARY_KEYMAP_QWERTY' in your sketch"
229
+
230
+ #endif
231
+
232
+
153
233
154
234
[NUMPAD] = KEYMAP_STACKED
155
235
(___, ___, ___, ___, ___, ___, ___,
@@ -167,7 +247,7 @@ KEYMAPS(
167
247
___),
168
248
169
249
[FUNCTION] = KEYMAP_STACKED
170
- (___, Key_F1, Key_F2, Key_F3, Key_F4, Key_F5, XXX ,
250
+ (___, Key_F1, Key_F2, Key_F3, Key_F4, Key_F5, Key_CapsLock ,
171
251
Key_Tab, ___, Key_mouseUp, ___, Key_mouseBtnR, Key_mouseWarpEnd, Key_mouseWarpNE,
172
252
Key_Home, Key_mouseL, Key_mouseDn, Key_mouseR, Key_mouseBtnL, Key_mouseWarpNW,
173
253
Key_End, Key_PrintScreen, Key_Insert, ___, Key_mouseBtnM, Key_mouseWarpSW, Key_mouseWarpSE,
@@ -180,7 +260,6 @@ KEYMAPS(
180
260
Key_PcApplication, Consumer_Mute, Consumer_VolumeDecrement, Consumer_VolumeIncrement, ___, Key_Backslash, Key_Pipe,
181
261
___, ___, Key_Enter, ___,
182
262
___)
183
-
184
263
) // KEYMAPS(
185
264
186
265
/* Re-enable astyle's indent enforcement */
0 commit comments