aboutsummaryrefslogtreecommitdiffstats
path: root/layouts/community/ergodox/replicaJunction/keymap.c
blob: ce0400be5cdb6bf2ff0545f9fe2fd3f7e75cd641 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
/*
 * Keyboard: Ergodox
 * Keymap:   replicaJunction
 * Version:  2.1
 */

#include QMK_KEYBOARD_H
#include "config.h"
#include "replicaJunction.h"

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

[L_COLEMAK] = LAYOUT_ergodox(
//--------|--------|--------|--------|--------|--------|--------|
  KC_ESC  ,KC_1    ,KC_2    ,KC_3    ,KC_4    ,KC_5    ,KC_GRV  ,
//--------|--------|--------|--------|--------|--------|--------|
  KX_ECTL ,KC_Q    ,KC_W    ,KC_F    ,KC_P    ,KC_B    ,KC_LBRC ,
//--------|--------|--------|--------|--------|--------|--------|
  KC_TAB  ,KC_A    ,KC_R_LT ,KC_S_LT ,KC_T    ,KC_G,
//--------|--------|--------|--------|--------|--------|--------|
  KC_LSFT ,KX_Z_MT ,KX_X_MT ,KX_C_MT ,KX_D_MT ,KC_V    ,KC_RBRC ,
//--------|--------|--------|--------|--------|--------|--------|
  TD_LAYR ,KC_LGUI ,KC_HYPR ,KX_CTSF ,KC_LCTL ,
//--------|--------|--------|--------|--------|--------|--------|
                                               KC_HOME ,KC_END  ,
//                                            |--------|--------|
                                                        KC_PGUP ,
//                                   |--------|--------|--------|
                                      KX_BKNM ,KX_DCTL ,KC_PGDN ,
//                                   |--------|--------|--------|

//--------|--------|--------|--------|--------|--------|-------|
  TG_GAME ,KC_6    ,KC_7    ,KC_8    ,KC_9    ,KC_0    ,KC_EQL ,
//--------|--------|--------|--------|--------|--------|-------|
  KC_DEL  ,KC_J    ,KC_L    ,KC_U    ,KC_Y    ,KC_SCLN ,KC_BSLS,
//--------|--------|--------|--------|--------|--------|-------|
           KC_M    ,KC_N    ,KC_E_LT ,KC_I_LT ,KC_O    ,KC_QUOT,
//--------|--------|--------|--------|--------|--------|-------|
  KC_LOCK ,KC_K    ,KX_H_MT ,KX_COMT ,KX_DOMT ,KX_SLMT ,KC_RSFT,
//--------|--------|--------|--------|--------|--------|-------|
                    KC_LALT ,KC_MINS ,KC_QUOT ,KC_EQL  ,TT_NUM ,
//--------|--------|--------|--------|--------|--------|-------|
  KC_LEFT ,KC_RGHT ,
//--------|--------|
  KC_UP   ,
//--------|--------|--------|
  KC_DOWN ,KX_NALT ,KX_SPAC
//--------|--------|--------|

),



[L_QWERTY] = LAYOUT_ergodox(
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_Q    ,KC_W    ,KC_E    ,KC_R    ,KC_T    ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_A    ,KC_S    ,KC_D    ,KC_F    ,KC_G    ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_Z    ,KC_X    ,KC_C    ,KC_V    ,KC_B    ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
                                               _______ ,_______ ,
//                                            |--------|--------|
                                                        _______ ,
//                                   |--------|--------|--------|
                                      _______ ,_______ ,_______ ,
//                                   |--------|--------|--------|

//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,KC_EQL  ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_Y    ,KC_U    ,KC_I    ,KC_O    ,KC_P    ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
           KC_H    ,KC_J    ,KC_K    ,KC_L    ,KC_SCLN ,KC_QUOT ,
//--------|--------|--------|--------|--------|--------|--------|
  KC_LOCK ,KC_N    ,KC_M    ,KC_COMM ,KC_DOT  ,KC_SLSH ,KC_RSPC ,
//--------|--------|--------|--------|--------|--------|--------|
                    KC_RALT ,KC_MINS ,KC_QUOT ,KC_EQL  ,TT_NUM  ,
//--------|--------|--------|--------|--------|--------|--------|
  KC_LEFT ,KC_RGHT ,
//--------|--------|
  KC_UP   ,
//--------|--------|--------|
  KC_DOWN ,KX_NALT ,KX_SPAC
//--------|--------|--------|
),



[L_NUM] = LAYOUT_ergodox(
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_F1   ,KC_F2   ,KC_F3   ,KC_F4   ,KC_F5   ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_EXLM ,KC_AT   ,KC_LCBR ,KC_RCBR ,KC_SLSH ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_HASH ,KC_DLR  ,KC_LPRN ,KC_RPRN ,KC_PIPE,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_BSLS ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,KC_AMPR ,KC_LABK ,KC_RABK,
//--------|--------|--------|--------|--------|--------|--------|
                                               _______ ,_______ ,
//                                            |--------|--------|
                                                        _______ ,
//                                   |--------|--------|--------|
                                      _______ ,_______ ,_______ ,
//                                   |--------|--------|--------|

//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_F6   ,KC_F7   ,KC_F8   ,KC_F9   ,KC_F10  ,KC_F11  ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_COLN ,KC_P7   ,KC_P8   ,KC_P9   ,KC_PSLS ,KC_F12  ,
//--------|--------|--------|--------|--------|--------|--------|
           KC_HASH ,KC_P4   ,KC_P5   ,KC_P6   ,KC_PAST ,KC_BSPC ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_BSPC ,KC_P1   ,KC_P2   ,KC_P3   ,KC_PMNS ,KC_TAB  ,
//--------|--------|--------|--------|--------|--------|--------|
                    KC_P0   ,KC_PDOT ,KC_PEQL ,KC_PPLS ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,
//--------|--------|
  _______ ,
//--------|--------|--------|
  _______ ,KC_PENT ,MO_FUNC
//--------|--------|--------|
),



[L_EXTEND] = LAYOUT_ergodox(
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F11,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,KC_APP  ,KX_CGR,  KC_VOLU,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_LGUI, KC_LSFT, KC_LALT, KC_LCTL, _______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,KX_SRCH, KX_PAST, KC_VOLD,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
                                               _______ ,_______ ,
//                                   |--------|--------|--------|
                                                        _______ ,
//                                   |--------|--------|--------|
                                      MO_FUNC, _______ ,_______ ,
//                                   |--------|--------|--------|

//--------|--------|--------|--------|--------|--------|--------|
  KC_F12,  KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  _______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_PGUP, KC_HOME, KC_UP,   KC_END,  KC_DEL,  _______ ,
//--------|--------|--------|--------|--------|--------|--------|
           KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_MENU,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,KX_STAB, KC_TAB,  _______ ,KC_INS, KC_PSCR,
//--------|--------|--------|--------|--------|--------|--------|
                    _______ ,_______ ,_______ ,KC_PSCR, _______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______
//--------|--------|--------|--------|--------|--------|--------|
),



[L_FUNC] = LAYOUT_ergodox(
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_F11  ,KC_F12  ,KC_F13  ,KC_F14  ,KC_F15  ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,M_LCLIK, M_RCLIK, M_MCLIK, _______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_LGUI, KC_LSFT, KC_LALT, KC_LCTL, M_WHLUP,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,M_LEFT,  M_DOWN,  M_UP    ,M_RIGHT, M_WHLDN, _______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
                                               _______ ,_______ ,
//                                   |--------|--------|--------|
                                                        _______ ,
//                                   |--------|--------|--------|
                                      _______ ,_______ ,_______ ,
//                                   |--------|--------|--------|

//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_F16  ,KC_F17  ,KC_F18  ,KC_F19  ,KC_F20  ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_VOLU, KC_F9,   KC_F10,  KC_F11,  KC_F12,  _______ ,
//--------|--------|--------|--------|--------|--------|--------|
           KC_MUTE, KC_F5,   KC_F6,   KC_F7,   KC_F8,   _______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_VOLD, KC_F1,   KC_F2,   KC_F3,   KC_F4,   _______ ,
//--------|--------|--------|--------|--------|--------|--------|
                    _______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______
//--------|--------|--------|--------|--------|--------|--------|
),



[L_GAMING] = LAYOUT_ergodox(
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  KC_ESC  ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,KC_R    ,KC_S    ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  KC_LSFT, _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,KC_LALT ,KC_LCTL ,
//--------|--------|--------|--------|--------|--------|--------|
                                               _______ ,_______ ,
//                                            |--------|--------|
                                                        _______ ,
//                                   |--------|--------|--------|
                                      KC_SPC,  KC_LSFT, _______ ,
//                                   |--------|--------|--------|

//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
           _______ ,_______ ,KC_E    ,KC_I    ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,KC_UP,   KC_SLSH,
//--------|--------|--------|--------|--------|--------|--------|
                    _______ ,_______ ,KC_LEFT, KC_DOWN, KC_RGHT,
//--------|--------|--------|--------|--------|--------|--------|
  M_MCLIK ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  M_RCLIK ,
//--------|--------|--------|--------|--------|--------|--------|
  M_LCLIK ,KC_ENT  ,KC_BSPC
//--------|--------|--------|--------|--------|--------|--------|
)
,

// "Letter Layers"

[L_LL_R] = LAYOUT_ergodox(
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,ooooooo ,KC_AMPR ,KC_PIPE ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
                                               _______ ,_______ ,
//                                            |--------|--------|
                                                        _______ ,
//                                   |--------|--------|--------|
                                      _______ ,_______ ,_______ ,
//                                   |--------|--------|--------|

//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_COLN ,KC_P7   ,KC_P8   ,KC_P9   ,KC_PSLS ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
           KC_HASH ,KC_P4   ,KC_P5   ,KC_P6   ,KC_PAST ,KC_TAB  ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_BSPC ,KC_P1   ,KC_P2   ,KC_P3   ,KC_PMNS ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
                    KC_P0   ,KC_PDOT ,KC_PEQL ,KC_PPLS ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,
//--------|--------|
  _______ ,
//--------|--------|--------|
  _______ ,KC_PENT ,MO_FUNC
//--------|--------|--------|
)
,

[L_LL_E] = LAYOUT_ergodox(
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  RJ_QMKV ,RJ_MAKE ,RJ_EQ   ,RJ_LEQ  ,RJ_GEQ  ,RJ_GEQR ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,RJ_SELS ,RJ_DUND ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
                                               _______ ,_______ ,
//                                            |--------|--------|
                                                        _______ ,
//                                   |--------|--------|--------|
                                      _______ ,_______ ,_______ ,
//                                   |--------|--------|--------|

//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
           _______ ,_______ ,ooooooo ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
                    _______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,
//--------|--------|
  _______ ,
//--------|--------|--------|
  _______ ,_______ ,_______
//--------|--------|--------|
)
,

[L_LL_I] = LAYOUT_ergodox(
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_EXLM ,KC_AT   ,KC_LCBR ,KC_RCBR ,KC_SLSH ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_HASH ,KC_DLR  ,KC_LPRN ,KC_RPRN ,KC_PIPE,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_BSLS ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,KC_AMPR ,KC_LABK ,KC_RABK,
//--------|--------|--------|--------|--------|--------|--------|
                                               _______ ,_______ ,
//                                            |--------|--------|
                                                        _______ ,
//                                   |--------|--------|--------|
                                      _______ ,_______ ,_______ ,
//                                   |--------|--------|--------|

//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,KC_UNDS, KC_GRV  ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
           _______ ,KC_MINS ,KC_QUOT ,ooooooo ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,KC_TILD, KC_DQT  ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
                    _______ ,_______ ,_______ ,_______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,
//--------|--------|--------|--------|--------|--------|--------|
  _______ ,_______ ,_______
//--------|--------|--------|--------|--------|--------|--------|
)


};

// The normal QMK functions ending in _user are overridden in the
// replicaJunction userspace. Those functions handle my global
// settings, and redirect to these _keymap functions if something
// is unhandled. This allows me to keep most of my global preferences
// in one place while still allowing keyboard-specific code.

// The idea was shamelessly copied from the amazing Drashna.

// Nothing to do here, so I've commented it out.
// bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
//   return true;
// }

// void matrix_init_keymap(void) {};

void matrix_scan_keymap(void) {

    uint8_t layer = biton32(layer_state);
    // uint8_t default_layer = biton32(layer_state);

    ergodox_board_led_off();

    switch (layer) {
        case L_COLEMAK:
            ergodox_right_led_1_on();
            ergodox_right_led_2_off();
            ergodox_right_led_3_off();
            break;
        case L_NUM:
            ergodox_right_led_1_on();
            ergodox_right_led_2_on();
            ergodox_right_led_3_off();
            break;
        case L_EXTEND:
            ergodox_right_led_1_on();
            ergodox_right_led_2_off();
            ergodox_right_led_3_on();
            break;
        case L_FUNC:
            ergodox_right_led_1_on();
            ergodox_right_led_2_on();
            ergodox_right_led_3_on();
            break;
        case L_GAMING:
            ergodox_right_led_1_off();
            ergodox_right_led_2_on();
            ergodox_right_led_3_on();
            break;
        default:
            // none
            break;
    }

};