1 #include QMK_KEYBOARD_H
3 #include "action_layer.h"
5 #include "process_keycode/process_tap_dance.h"
8 #include "keymap_german.h"
10 #include "keymap_nordic.h"
13 enum custom_keycodes {
14 PLACEHOLDER = SAFE_RANGE, // can always be here
21 // Custom tapping terms for each key.
22 // Requires changes to action_taping.c
23 // uint16_t get_tapping_term(keyevent_t* event) {
24 // uint16_t keycode = keymap_key_to_keycode(layer_switch_get_layer(event->key), event->key);
25 // if (keycode == NAV_E ) {
26 // return TAPPING_TERM + 50;
28 // return TAPPING_TERM;
32 // _XXXXXX_ is a symbol that means, "DO NOT ASSIGN THIS KEY TO ANTYING", because the key
33 // underneath this layer is the key that sends you to/from this layer.
34 // Meaning, if you were to put something here - then you will be stuck in this layer.
35 // It is simply a visual reminder not to use that key for this layer.
36 // Example: On the numpad layer, under the letter `D` is `_XXXXXXX_`, because pressing and holding
37 // `D` sends you to the numpad layer
39 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
42 //**************************FIRST LAYER - LAYER ZERO **************************************
45 SHF6_AF7, F1_F13 , F2_F14, TD(F3D), F4_ALTF4, F5_F15, KC_F11,
46 SPRK_TCK , Q_ESC , CTR_SH_W, NAV_E, ALT_SH_R, KC_T, PRINTSCR,
47 KC_TAB , KC_A , MEH_S, NUMPAD_D, CTRL_F, WIN_G,
48 OSL(_ONESHOT), CTRL_Z , HYPER_X, MOUSE_C, ALT_V, KC_B, OSL(_MOUSE),
49 KC_MINUS, KC_GRAVE, KC_DELETE, KC_LEFT, KC_RIGHT,
51 LSFT(KC_INSERT), TT(_QWERTY_KIDS),
53 KC_LSHIFT, SYMB_BSP, KC_INSERT ,
55 F12_RUN, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, TD(CALCCOMP),
56 CALTDEL , KC_Y, KC_U, KC_I, KC_O, KC_P, MODRESET,
57 WIN_H, CTRL_J, APP_SW_K, MEH_L, COL_MOUS, END_HOME,
58 OSL(_ONESHOT), KC_N, ALT_M, COMMA_TD, HYPE_DOT, KC_SLASH, ID_MAN_IP,
59 KC_UP, KC_DOWN,KC_DELETE, KC_TILD, KC_UNDS,
61 TT(_STREET_FIGHTER), ________,
63 KC_PGDOWN, LT(_NAV,KC_ENTER), SPAC_TXT),
66 //**************************SYMBOLS LAYER**************************
68 ________, ________, ________, ________, ________, ________, ________,
69 ________, DEREF , KC_AT, KC_LCBR, KC_RCBR, KC_CIRC, ________,
70 ________, KC_EXLM, KC_HASH, KC_LPRN, KC_RPRN, ________,
71 ________,KC_DOLLAR, KC_PERC, LSQUIGLY, RSQUIGLY, ________, ________,
72 ________,TICK3 , ________, ________, ________,
76 ________,_XXXXXX_,________,
79 ________, ________, ________, ________, ________, ________, NUMLOCK,
80 ________,TIL_SLASH, KC_PIPE, KC_PLUS, KC_AMPR, ________, CAPLOCK,
81 EQRIGHT, KC_DQUO, KC_EQUAL, KC_QUOTE,KC_SCOLON, ________,
82 ________, KC_M, BK_SLASH, ASTERSK, KC_DOT, KC_SLASH, ________,
83 ________,________ ,________,TILD3,________,
86 ________,________,_XXXXXX_),
88 //**************************MOUSE MOVEMENT LAYER**************************
89 [_MOUSE] = KEYMAP(UP_ENTER_RESET,________,________,________,________,________,MODRESET,
90 RESET,KC_SECRET_5,________,KC_MS_UP,KC_SECRET_4,KC_MS_WH_UP,________,
91 ________,________,KC_MS_LEFT,KC_MS_DOWN,KC_MS_RIGHT,KC_MS_WH_DOWN,
92 KC_SECRET_5,KC_SECRET_4,KC_SECRET_3,_XXXXXX_,KC_SECRET_2,KC_SECRET_1,_XXXXXX_,
93 ________,________,HYPR(KC_F15),KC_MS_WH_LEFT,KC_MS_WH_RIGHT,
97 KC_MS_BTN1,KC_MS_BTN2,________,
100 ________,________,________,________,________,________,________,
101 ________,________,________,KC_UP,________,KC_MEDIA_PLAY_PAUSE,________,
102 ________,KC_LEFT,KC_DOWN,KC_RIGHT,_XXXXXX_,________,
103 ________,KC_MEDIA_NEXT_TRACK,KC_AUDIO_VOL_UP,KC_AUDIO_VOL_DOWN,KC_MUTE,________,________,
104 KC_MS_WH_UP,KC_MS_WH_DOWN,________,________,________,
107 ________,KC_WWW_BACK,KC_WWW_FORWARD),
112 //**************************WINDOWS NAVIGATION LAYER**************************
114 [_NAV] = KEYMAP(________,________,________,________,________,________,________,
115 ________,________,SNAPLEFT,_XXXXXX_,SNAPRGHT,________,________,
116 ________,KC_WWW_BACK,PREVTAB,________,NEXTTAB,SNAPUP,
117 ________,________,WORKLEFT,________,WORKRIGHT,SNAPDOWN,________,
118 ________,________,________,________,________,
122 ________,________,________,
125 ________,________,________,________,________,________,________,
126 ________,________,SNAPUP ,KC_UP ,SNAPDOWN,________,________,
127 ________,KC_LEFT ,KC_DOWN ,KC_RIGHT,________,________,
128 ________,________,________,________,________,________,________,
129 ________,________,________,________,________,
134 ________,________,________),
136 //****************************NUMPAD LAYER****************************
137 [_NUMPAD] = KEYMAP(________,________,________,________,________,________,________,
138 ________,________,________,________,________,________,________,
139 ________,KC_DOT ,KC_SPACE,_XXXXXX_, KC_ESC ,________,
140 ________,DBMS_OUT,________,________,________,________,________,
141 ________,________,________,________,________,
145 KC_PLUS,KC_MINUS,________,
147 BL_TOGG ,BL_STEP ,________,________,________,________,________,
148 ________,________,KC_7 ,KC_8 ,KC_9 ,________,________,
149 ________,KC_4 ,KC_5 ,KC_6 ,________,________,
150 ________,KC_DOT, KC_1 ,KC_2 ,KC_3 ,________,________,
151 KC_0 ,KC_DOT , KC_DOT ,________,________,
155 ________,________,KC_0),
157 //****************************APP SWITCH LAYER****************************
158 [_APPSWITCH] = KEYMAP(________,________,________,________,________,________,________,
159 ________,________ , ________ , ________ ,________ ,________,________,
160 ________,APP_5,APP_6,APP_7,APP_8,________,
161 ________,DBMS_OUT,________,________,________,________,________,
162 ________,________,________,________,________,
166 KC_PLUS,________,________,
168 ________,________,________,________,________,________,________,
169 ________,________,APP_3 ,________,APP_4 ,________,________,
170 ________,APP_1 ,_XXXXXX_,APP_2 ,________,________,
171 ________,________,________,________,________,________,________,
172 ________,________,________,________,________,
176 ________,________,________),
179 [_ONESHOT] = KEYMAP( UP_ENTER_RESET , ________, ________, ________, ________, ________, ________,
180 ________, ________, ________, KC_UP , ________, ________, ________,
181 ________, ________, KC_LEFT , KC_DOWN , KC_RIGHT, ________,
182 MAGIC_TOGGLE_NKRO, ________, ________, ________, ________, ________, ________,
183 ________, ________, ________, ________, ________,
187 ________, ________, ________,
189 ________, ________, ________, ________, ________, ________, ________,
190 ________, ________, KC_7, KC_8, KC_9, KC_PLUS, ________,
191 ________, KC_4, KC_5, KC_6, KC_EQUAL, ________,
192 ________, ________, KC_1, KC_2, KC_3, KC_ASTR, ________,
193 ________, ________, KC_0, ________, ________,
197 ________, ________, ________),
198 //****************************TEXT/INTELLIJ NAVIGATION LAYER****************************
199 [_TEXTNAV] = KEYMAP(________,________,________,________,________,________,________,
200 ________,MEH(KC_Q),LSFT(KC_ESCAPE),MEH(KC_D),MEH(KC_2),LALT(LSFT(KC_UP)),________,
201 ________,________,LCTL(KC_LEFT),LCTL(KC_B),LCTL(KC_RIGHT),LALT(LSFT(KC_DOWN)),
202 ________,________,________,LCTL(LSFT(KC_COMMA)),MEH(KC_DOT),LALT(KC_MS_WH_UP),________,
203 ________,________,________,________,________,
205 ________,________,________,________,________,________,
207 LALT(LSFT(KC_F9)),________,________,________,________,________,________,________,MEH(KC_5),LALT(LSFT(KC_Z)),
208 ________,LALT(KC_Z),________,________,________,LCTL(LSFT(KC_LEFT)),LALT(LCTL(KC_S)),LCTL(LSFT(KC_RIGHT)),
209 LCTL(LSFT(KC_COMMA)),________,________,________,________,________,________,________,________,________,
210 ________,________,________,________,________,________,________,________,________,_XXXXXX_),
211 [_QWERTY_KIDS] = KEYMAP(
213 KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
214 KC_NO , KC_Q , KC_W, KC_E, KC_R, KC_T, KC_NO ,
215 KC_NO , KC_A , KC_S, KC_D, KC_F, KC_G ,
216 KC_NO , KC_Z , KC_X, KC_C, KC_V, KC_B, KC_NO ,
217 KC_MINUS, KC_GRAVE, KC_DELETE, KC_LEFT, KC_RIGHT,
219 KC_NO , TT(_QWERTY_KIDS) ,
221 KC_LSHIFT, KC_BSPACE, KC_NO ,
223 KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
224 KC_NO , KC_Y, KC_U, KC_I, KC_O, KC_P, KC_NO ,
225 KC_H, KC_J, KC_K, KC_L, KC_SCOLON , KC_NO,
226 KC_NO , KC_N, KC_M, KC_COMMA , KC_DOT , KC_SLASH, KC_NO ,
227 KC_UP, KC_DOWN, KC_DELETE, KC_TILD, KC_UNDS,
231 KC_NO, KC_ENTER, KC_SPACE),
233 [_STREET_FIGHTER] = KEYMAP(
235 KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
236 KC_NO , KC_NO , DIE_1000X_LEFT, KC_UP, DIE_1000X_RIGHT, KC_NO, KC_NO ,
237 KC_NO , KC_NO , KC_LEFT, KC_DOWN, KC_RIGHT, KC_NO ,
238 KC_NO , KC_NO , KC_NO, KC_NO, KC_NO, KC_NO, KC_NO ,
239 KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
241 ________ , ________ ,
243 ________, ________, ________ ,
245 KC_NO, KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
246 KC_NO , KC_NO, KC_G, KC_H, KC_J, KC_NO, KC_NO ,
247 KC_NO, KC_B, KC_N, KC_M, KC_K , KC_NO,
248 KC_NO , KC_NO, KC_NO, KC_NO , KC_NO , KC_NO, KC_NO ,
249 KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
251 TT(_STREET_FIGHTER) , ________ ,
253 ________, ________, ________),
256 //************************Windows navigation to directories*************************
258 ________,________,________,________,________,________,________,
259 ________,________,________,________,________,________,________,
260 ________,________,KC_A,________,________,________,
261 ________,________,________,________,________,________,________,
262 ________,________,________,________,________,
266 ________,________,________,
269 ________,________,________,________,________,________,________,
270 ________,________,________,________,________,________,________,
271 ________,________,_______,________,________,________,
272 ________,________,________,________,________,________,________,
273 ________,________,________,________,________,
278 ________,________,________),
281 [_TEXT_MACROS] = KEYMAP(
282 ________,________,________,________,________,________,________,
283 ________,________,________,________,________,________,________,
284 ________,________,KC_A,________,________,________,
285 ________,________,________,________,________,________,________,
286 ________,________,________,________,________,
290 ________,________,________,
293 ________,________,________,________,________,________,________,
294 ________,________,________,________,________,________,________,
295 ________,________,_______,________,________,________,
296 ________,________,________,________,________,________,________,
297 ________,________,________,________,________,
302 ________,________,________)
305 /* FOR FORMATTING FUTURE LAYERS
306 NO KEY CODES SHOULD BE MORE THAN 8 CHARACTERS
307 GOES LEFT HAND THEN RIGHT HAND
309 ________,________,________,________,________,________,________,
310 ________,________,________,________,________,________,________,
311 ________,________,________,________,________,________,
312 ________,________,________,________,________,________,________,
313 ________,________,________,________,________,
317 ________,________,________,
320 ________,________,________,________,________,________,________,
321 ________,________,________,________,________,________,________,
322 ________,________,________,________,________,________,
323 ________,________,________,________,________,________,________,
324 ________,________,________,________,________,
329 ________,________,________), */
336 const uint16_t PROGMEM fn_actions[] = {
337 [1] = ACTION_LAYER_TAP_TOGGLE(1)
340 void matrix_scan_user(void) {
342 uint8_t layer = biton32(layer_state);
344 ergodox_board_led_on();
345 ergodox_led_all_on();
347 ergodox_board_led_off();
348 ergodox_right_led_1_off();
349 ergodox_right_led_2_off();
350 ergodox_right_led_3_off();
356 ergodox_right_led_1_on();
359 ergodox_right_led_2_on();
362 ergodox_right_led_3_on();
365 ergodox_right_led_1_on();
366 ergodox_right_led_2_on();
369 //layer unused right now
372 //layer unused right nowex
375 ergodox_right_led_2_on();
376 ergodox_right_led_3_on();
379 ergodox_right_led_1_on();
380 ergodox_right_led_2_on();
381 ergodox_right_led_3_on();
384 ergodox_right_led_1_on();
385 ergodox_right_led_3_on();
388 ergodox_right_led_1_on();
389 ergodox_right_led_2_on();
390 ergodox_right_led_3_on();
392 case _STREET_FIGHTER:
393 ergodox_right_led_2_on();
394 ergodox_right_led_3_on();