]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/ergodox_ez/keymaps/bepo/keymap.c
Merge pull request #584 from algernon/ergodox-ez/algernon
[qmk_firmware.git] / keyboards / ergodox_ez / keymaps / bepo / keymap.c
1 #include "ergodox_ez.h"
2 #include "debug.h"
3 #include "action_layer.h"
4 #include "keymap_bepo.h"
5
6 #define BASE 0 // default layer
7 #define QWER 1 // qwerty compat layer
8 #define SQWER 2 // shifted qwerty compat layer
9 #define AQWER 3 // alted qwerty compat layer
10 #define FNAV 4 // function / navigation keys
11 #define NUM 5 // numeric keypad keys
12 #define MSE 6 // mouse keys
13
14 #define KP_00 0
15 #define CA_Fx 1
16
17 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
18 /* Keymap 0: Base layer
19  *
20  * ,--------------------------------------------------.                                  ,--------------------------------------------------.
21  * |   $    |   "  |   <  |   >  |   (  |   )  |Delete|                                  |ScroLo|   @  |   +  |   -  |   /  |   *  |   =    |
22  * |--------+------+------+------+------+-------------|                                  |------+------+------+------+------+------+--------|
23  * |   %    |   B  |E_ACUT|   P  |   O  |E_GRAV|Backsp|                                  |CapsLo|   ^  |   V  |   D  |   L  |   J  |   Z    |
24  * |--------+------+------+------+------+------|  ace |                                  |      |------+------+------+------+------+--------|
25  * |   W    |   A  |   U  |   I  |   E  |   ,  |------|                                  |------|   C  |   T  |   S  |   R  |   N  |   M    |
26  * |--------+------+------+------+------+------|  Tab |                                  | NumLo|------+------+------+------+------+--------|
27  * | E_CIRC |A_GRAV|   Y  |   X  |   .  |   K  |      |                                  |      |   '  |   Q  |   G  |   H  |   F  | C_CEDIL|
28  * `--------+------+------+------+------+-------------,-------------.      ,-------------`-------------+------+------+------+------+--------'
29  *   |QWERTY|      |LSuper| LCtrl|  LAlt|             |Escape| L_Mse|      |      |Insert|             | AltGr| RCtrl|RSuper|PrntSc| Pause|
30  *   `----------------------------------'      ,------|------|------|      |------+------+------.      `----------------------------------'
31  *                                             |      |      | L_Num|      | CA_Fx|      |      |
32  *                                             | Space|LShift|------|      |------|RShift|Enter |
33  *                                             |      |      |L_FNav|      |L_FNav|      |      |
34  *                                             `--------------------'      `--------------------'
35  */
36 [BASE] = KEYMAP(
37 // Left hand
38 BP_DOLLAR,      BP_DQOT,        BP_LGIL,        BP_RGIL,        BP_LPRN,        BP_RPRN,        KC_DEL,
39 BP_PERCENT,     BP_B,           BP_E_ACUTE,     BP_P,           BP_O,           BP_E_GRAVE,     KC_BSPC,
40 BP_W,           BP_A,           BP_U,           BP_I,           BP_E,           BP_COMMA,
41 BP_ECRC,        BP_A_GRAVE,     BP_Y,           BP_X,           BP_DOT,         BP_K,           KC_TAB,
42 TG(QWER),       KC_NO,          KC_LGUI,        KC_LCTL,        KC_LALT,
43                                                                                                                 KC_ESC,         MO(MSE),
44                                                                                                                                 MO(NUM),
45                                                                                                 KC_SPC,         KC_LSHIFT,      MO(FNAV),
46 // Right hand
47                                 KC_SLCK,        BP_AT,          BP_PLUS,        BP_MINUS,       BP_SLASH,       BP_ASTR,        BP_EQUAL,
48                                 KC_CAPSLOCK,    BP_DCRC,        BP_V,           BP_D,           BP_L,           BP_J,           BP_Z,
49                                                 BP_C,           BP_T,           BP_S,           BP_R,           BP_N,           BP_M,
50                                 KC_NUMLOCK,     BP_APOS,        BP_Q,           BP_G,           BP_H,           BP_F,           BP_CCED,
51                                                                 BP_ALGR,        KC_RCTL,        KC_RGUI,        KC_PSCREEN,     KC_PAUSE,
52 KC_NO,          KC_INS,
53 M(CA_Fx),
54 MO(FNAV),       KC_RSHIFT,      KC_ENTER),
55 /* Keymap 1: QWERTY system compatibility layer
56  *
57  * ,--------------------------------------------------.                                  ,--------------------------------------------------.
58  * |   $    |   "  |   <  |   >  |   (  |   )  |Delete|                                  |ScroLo|   @  |   +  |   -  |   /  |   *  |   =    |
59  * |--------+------+------+------+------+-------------|                                  |------+------+------+------+------+------+--------|
60  * |   %    |   b  |   e  |   p  |   o  |   e  |Backsp|                                  |CapsLo|   ^  |   v  |   d  |   l  |   j  |   z    |
61  * |--------+------+------+------+------+------|  ace |                                  |      |------+------+------+------+------+--------|
62  * |   w    |   a  |   u  |   i  |   e  |   ,  |------|                                  |------|   c  |   t  |   s  |   r  |   n  |   m    |
63  * |--------+------+------+------+------+------|  Tab |                                  | NumLo|------+------+------+------+------+--------|
64  * |   e    |   a  |   y  |   x  |   .  |   k  |      |                                  |      |   '  |   q  |   g  |   h  |   f  |   c    |
65  * `--------+------+------+------+------+-------------,-------------.      ,-------------`-------------+------+------+------+------+--------'
66  *   | BEPO |      |LSuper| LCtrl|  LAlt|             |Escape| L_Mse|      |      |Insert|             | AltGr| RCtrl|RSuper|PrntSc| Pause|
67  *   `----------------------------------'      ,------|------|------|      |------+------+------.      `----------------------------------'
68  *                                             |      |      | L_Num|      |      |      |      |
69  *                                             | Space|LShift|------|      |------|RShift|Enter |
70  *                                             |      |      |L_FNav|      |L_FNav|      |      |
71  *                                             `--------------------'      `--------------------'
72  */
73 [QWER] = KEYMAP(
74 // Left hand
75 KC_DOLLAR,      S(KC_QUOT),     S(KC_COMM),     S(KC_DOT),      KC_LPRN,        KC_RPRN,        KC_DEL,
76 KC_PERCENT,     KC_B,           KC_E,           KC_P,           KC_O,           KC_E,           KC_BSPC,
77 KC_W,           KC_A,           KC_U,           KC_I,           KC_E,           KC_COMMA,
78 KC_E,           KC_A,           KC_Y,           KC_X,           KC_DOT,         KC_K,           KC_TAB,
79 KC_TRNS,        KC_NO,          KC_LGUI,        KC_LCTL,        KC_LALT,
80                                                                                                                 KC_ESC,         MO(MSE),
81                                                                                                                                 MO(NUM),
82                                                                                                 KC_SPC,         MO(SQWER),      MO(FNAV),
83 // Right hand
84                                 KC_SLCK,        KC_AT,          KC_PLUS,        KC_MINUS,       KC_SLASH,       KC_ASTR,        KC_EQUAL,
85                                 KC_CAPSLOCK,    KC_CIRC,        KC_V,           KC_D,           KC_L,           KC_J,           KC_Z,
86                                                 KC_C,           KC_T,           KC_S,           KC_R,           KC_N,           KC_M,
87                                 KC_NUMLOCK,     KC_QUOT,        KC_Q,           KC_G,           KC_H,           KC_F,           KC_C,
88                                                                 MO(AQWER),      KC_RCTL,        KC_RGUI,        KC_PSCREEN,     KC_PAUSE,
89 KC_NO,          KC_INS,
90 KC_TRNS,
91 MO(FNAV),       MO(SQWER),      KC_ENTER),
92 /* Keymap 2: QWERTY shifted system compatibility layer
93  *
94  * ,--------------------------------------------------.                                  ,--------------------------------------------------.
95  * |   #    |   1  |   2  |   3  |   4  |   5  |Delete|                                  |ScroLo|   6  |   7  |   8  |   9  |   0  |   =    |
96  * |--------+------+------+------+------+-------------|                                  |------+------+------+------+------+------+--------|
97  * |   `    |   B  |   E  |   P  |   O  |   E  |Backsp|                                  |CapsLo|   !  |   V  |   D  |   L  |   J  |   Z    |
98  * |--------+------+------+------+------+------|  ace |                                  |      |------+------+------+------+------+--------|
99  * |   W    |   A  |   U  |   I  |   E  |   ;  |------|                                  |------|   C  |   T  |   S  |   R  |   N  |   M    |
100  * |--------+------+------+------+------+------|  Tab |                                  | NumLo|------+------+------+------+------+--------|
101  * |   E    |   A  |   Y  |   X  |   :  |   K  |      |                                  |      |   ?  |   Q  |   G  |   H  |   F  |   C    |
102  * `--------+------+------+------+------+-------------,-------------.      ,-------------`-------------+------+------+------+------+--------'
103  *   | BEPO |      |LSuper| LCtrl|  LAlt|             |Escape| L_Mse|      |      |Insert|             | AltGr| RCtrl|RSuper|PrntSc| Pause|
104  *   `----------------------------------'      ,------|------|------|      |------+------+------.      `----------------------------------'
105  *                                             |      |      | L_Num|      |      |      |      |
106  *                                             | Space|LShift|------|      |------|RShift|Enter |
107  *                                             |      |      |L_FNav|      |L_FNav|      |      |
108  *                                             `--------------------'      `--------------------'
109  */
110 [SQWER] = KEYMAP(
111 // Left hand
112 KC_HASH,        KC_1,           KC_2,           KC_3,           KC_4,           KC_5,           KC_TRNS,
113 KC_GRV,         S(KC_B),        S(KC_E),        S(KC_P),        S(KC_O),        S(KC_E),        KC_TRNS,
114 S(KC_W),        S(KC_A),        S(KC_U),        S(KC_I),        S(KC_E),        KC_SCOLON,
115 S(KC_E),        S(KC_A),        S(KC_Y),        S(KC_X),        KC_COLON,       S(KC_K),        S(KC_TAB),
116 KC_TRNS,        KC_TRNS,        S(KC_LGUI),     S(KC_LCTL),     S(KC_LALT),
117                                                                                                                 KC_TRNS,        KC_TRNS,
118                                                                                                                                 KC_TRNS,
119                                                                                                 KC_TRNS,        KC_TRNS,        KC_TRNS,
120 // Right hand
121                                 KC_TRNS,        KC_6,           KC_7,           KC_8,           KC_9,           KC_0,           KC_TRNS,
122                                 KC_TRNS,        KC_EXLM,        S(KC_V),        S(KC_D),        S(KC_L),        S(KC_J),        S(KC_Z),
123                                                 S(KC_C),        S(KC_T),        S(KC_S),        S(KC_R),        S(KC_N),        S(KC_M),
124                                 KC_TRNS,        S(KC_SLASH),    S(KC_Q),        S(KC_G),        S(KC_H),        S(KC_F),        S(KC_C),
125                                                                 S(KC_RALT),     S(KC_RCTL),     S(KC_RGUI),     KC_TRNS,        KC_TRNS,
126 KC_TRNS,        KC_TRNS,
127 KC_TRNS,
128 KC_TRNS,        KC_TRNS,        KC_TRNS),
129 /* Keymap 3: QWERTY alted system compatibility layer
130  *
131  * ,--------------------------------------------------.                                  ,--------------------------------------------------.
132  * |   $    |   "  |   <  |   >  |   [  |   ]  |Delete|                                  |ScroLo|   @  |   +  |   -  |   /  |   *  |   =    |
133  * |--------+------+------+------+------+-------------|                                  |------+------+------+------+------+------+--------|
134  * |   %    |   |  |   e  |   &  |   o  |   e  |Backsp|                                  |CapsLo|   ^  |   v  |   d  |   l  |   j  |   z    |
135  * |--------+------+------+------+------+------|  ace |                                  |      |------+------+------+------+------+--------|
136  * |   w    |   a  |   u  |   i  |   â‚¬  |   ,  |------|                                  |------|   c  |   t  |   s  |   r  |   n  |   m    |
137  * |--------+------+------+------+------+------|  Tab |                                  | NumLo|------+------+------+------+------+--------|
138  * |   e    |   \  |   {  |   }  |   .  |   ~  |      |                                  |      |   '  |   q  |   g  |   h  |   f  |   c    |
139  * `--------+------+------+------+------+-------------,-------------.      ,-------------`-------------+------+------+------+------+--------'
140  *   | BEPO |      |LSuper| LCtrl|  LAlt|             |Escape| L_Mse|      |      |Insert|             | AltGr| RCtrl|RSuper|PrntSc| Pause|
141  *   `----------------------------------'      ,------|------|------|      |------+------+------.      `----------------------------------'
142  *                                             |      |      | L_Num|      |      |      |      |
143  *                                             |   _  |LShift|------|      |------|RShift|Enter |
144  *                                             |      |      |L_FNav|      |L_FNav|      |      |
145  *                                             `--------------------'      `--------------------'
146  */
147 [AQWER] = KEYMAP(
148 // Left hand
149 KC_DOLLAR,      S(KC_QUOT),     S(KC_COMM),     S(KC_DOT),      KC_LBRC,        KC_RBRC,        KC_DEL,
150 KC_PERCENT,     KC_PIPE,        KC_E,           KC_AMPR,        KC_O,           KC_E,           KC_BSPC,
151 KC_W,           KC_A,           KC_U,           KC_I,           RALT(KC_5),     KC_COMMA,
152 KC_E,           KC_BSLASH,      KC_LCBR,        KC_RCBR,        KC_DOT,         KC_TILDE,       KC_TAB,
153 KC_TRNS,        KC_NO,          KC_LGUI,        KC_LCTL,        KC_LALT,
154                                                                                                                 KC_ESC,         MO(MSE),
155                                                                                                                                 MO(NUM),
156                                                                                                 KC_UNDS,        MO(SQWER),      MO(FNAV),
157 // Right hand
158                                 KC_SLCK,        KC_AT,          KC_PLUS,        KC_MINUS,       KC_SLASH,       KC_ASTR,        KC_EQUAL,
159                                 KC_CAPSLOCK,    KC_CIRC,        KC_V,           KC_D,           KC_L,           KC_J,           KC_Z,
160                                                 KC_C,           KC_T,           KC_S,           KC_R,           KC_N,           KC_M,
161                                 KC_NUMLOCK,     KC_QUOT,        KC_Q,           KC_G,           KC_H,           KC_F,           KC_C,
162                                                                 KC_TRNS,        KC_RCTL,        KC_RGUI,        KC_PSCREEN,     KC_PAUSE,
163 KC_NO,          KC_INS,
164 KC_TRNS,
165 MO(FNAV),       MO(SQWER),      KC_ENTER),
166 /* Keymap 4: function / navigation layer
167  *
168  * ,--------------------------------------------------.                                  ,--------------------------------------------------.
169  * |        |  F1  |  F2  |  F3  |  F4  |  F5  |VolMut|                                  |      |  F6  |  F7  |  F8  |  F9  |  F10 |        |
170  * |--------+------+------+------+------+-------------|                                  |------+------+------+------+------+------+--------|
171  * |        |      |      |      |      |      |VolDwn|                                  |      | PgUp | Home |  Up  |  End |  F11 |        |
172  * |--------+------+------+------+------+------|      |                                  |      |------+------+------+------+------+--------|
173  * |        |      |      |      |      |      |------|                                  |------| PgDn | Left | Down | Right|  F12 |        |
174  * |--------+------+------+------+------+------| VolUp|                                  |      |------+------+------+------+------+--------|
175  * |        | Undo |  Cut | Copy | Paste|      |      |                                  |      |      |      |      |      |      |        |
176  * `--------+------+------+------+------+-------------,-------------.      ,-------------`-------------+------+------+------+------+--------'
177  *   |      |      |      |      |      |             |      |      |      |      |      |             |      |      |      |      |      |
178  *   `----------------------------------'      ,------|------|------|      |------+------+------.      `----------------------------------'
179  *                                             |      |      |      |      |      |      |      |
180  *                                             |      |      |------|      |------|      |      |
181  *                                             |      |      |      |      |      |      |      |
182  *                                             `--------------------'      `--------------------'
183  */
184 [FNAV] = KEYMAP(
185 // Left hand
186 KC_NO,          KC_F1,          KC_F2,          KC_F3,          KC_F4,          KC_F5,          KC_MUTE,
187 KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_VOLU,
188 KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,
189 KC_NO,          KC_UNDO,        KC_CUT,         KC_COPY,        KC_PASTE,       KC_NO,          KC_VOLD,
190 KC_NO,          KC_NO,          KC_TRNS,        KC_TRNS,        KC_TRNS,
191                                                                                                                 KC_NO,          KC_NO,
192                                                                                                                                 KC_NO,
193                                                                                                 KC_NO,          KC_TRNS,        KC_TRNS,
194 // Right hand
195                                 KC_NO,          KC_F6,          KC_F7,          KC_F8,          KC_F9,          KC_F10,         KC_NO,
196                                 KC_NO,          KC_PGUP,        KC_HOME,        KC_UP,          KC_END,         KC_F11,         KC_NO,
197                                                 KC_PGDOWN,      KC_LEFT,        KC_DOWN,        KC_RIGHT,       KC_F12,         KC_NO,
198                                 KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,
199                                                                 KC_TRNS,        KC_TRNS,        KC_TRNS,        KC_NO,          KC_NO,
200 KC_NO,          KC_NO,
201 KC_TRNS,
202 KC_TRNS,        KC_TRNS,        KC_NO),
203 /* Keymap 5: numeric layer, sends keypad codes
204  *
205  * ,--------------------------------------------------.                                  ,--------------------------------------------------.
206  * |        |      |      |      |      |      |      |                                  |      |      |   +  |   -  |   /  |   *  |        |
207  * |--------+------+------+------+------+-------------|                                  |------+------+------+------+------+------+--------|
208  * |        |      |      |      |      |      |      |                                  |      |      |   7  |   8  |   9  |      |        |
209  * |--------+------+------+------+------+------|      |                                  |      |------+------+------+------+------+--------|
210  * |        |      |      |      |      |      |------|                                  |------|      |   4  |   5  |   6  |      |        |
211  * |--------+------+------+------+------+------|      |                                  |      |------+------+------+------+------+--------|
212  * |        |      |      |      |      |      |      |                                  |      |      |   1  |   2  |   3  |      |        |
213  * `--------+------+------+------+------+-------------,-------------.      ,-------------`-------------+------+------+------+------+--------'
214  *   |      |      |      |      |      |             |      |      |      |      |      |             |   0  |  00  |   .  |      |      |
215  *   `----------------------------------'      ,------|------|------|      |------+------+------.      `----------------------------------'
216  *                                             |      |      |      |      |      |      |      |
217  *                                             |      |      |------|      |------|      | Enter|
218  *                                             |      |      |      |      |      |      |      |
219  *                                             `--------------------'      `--------------------'
220  */
221 [NUM] = KEYMAP(
222 // Left hand
223 KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,
224 KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,
225 KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,
226 KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,
227 KC_NO,          KC_NO,          KC_TRNS,        KC_TRNS,        KC_TRNS,
228                                                                                                                 KC_NO,          KC_NO,
229                                                                                                                                 KC_TRNS,
230                                                                                                 KC_NO,          KC_TRNS,        KC_NO,
231 // Right hand
232                                 KC_NO,          KC_NO,          KC_KP_PLUS,     KC_KP_MINUS,    KC_KP_SLASH,    KC_KP_ASTERISK, KC_NO,
233                                 KC_NO,          KC_NO,          KC_KP_7,        KC_KP_8,        KC_KP_9,        KC_NO,          KC_NO,
234                                                 KC_NO,          KC_KP_4,        KC_KP_5,        KC_KP_6,        KC_NO,          KC_NO,
235                                 KC_NO,          KC_NO,          KC_KP_1,        KC_KP_2,        KC_KP_3,        KC_NO,          KC_NO,
236                                                                 KC_KP_0,        M(KP_00),       KC_KP_COMMA,    KC_NO,          KC_NO,
237 KC_NO,          KC_NO,
238 KC_NO,
239 KC_NO,          KC_TRNS,        KC_KP_ENTER),
240 /* Keymap 6: mouse layer
241  *
242  * ,--------------------------------------------------.                                  ,--------------------------------------------------.
243  * |        |      |      |      |      |      |      |                                  |      |      |      |      |      |      |        |
244  * |--------+------+------+------+------+-------------|                                  |------+------+------+------+------+------+--------|
245  * |        |      |      |      |      |      |      |                                  |      |      |LClick|  Up  |RClick| WhUp |        |
246  * |--------+------+------+------+------+------|      |                                  |      |------+------+------+------+------+--------|
247  * |        |      |      |      |      |      |------|                                  |------|      | Left | Down | Right|WhDown|        |
248  * |--------+------+------+------+------+------|      |                                  |      |------+------+------+------+------+--------|
249  * |        |      |      |      |      |      |      |                                  |      |      |      |      |      |      |        |
250  * `--------+------+------+------+------+-------------,-------------.      ,-------------`-------------+------+------+------+------+--------'
251  *   |      |      |      |      |      |             |      |      |      |      |      |             |      |      |      |      |      |
252  *   `----------------------------------'      ,------|------|------|      |------+------+------.      `----------------------------------'
253  *                                             |      |      |      |      |      |      |      |
254  *                                             |      |      |------|      |------|      |      |
255  *                                             |      |      |      |      |      |      |      |
256  *                                             `--------------------'      `--------------------'
257  */
258 [MSE] = KEYMAP(
259 // Left hand
260 KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,
261 KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,
262 KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,
263 KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,
264 KC_NO,          KC_NO,          KC_TRNS,        KC_TRNS,        KC_TRNS,
265                                                                                                                 KC_NO,          KC_TRNS,
266                                                                                                                                 KC_NO,
267                                                                                                 KC_NO,          KC_TRNS,        KC_NO,
268 // Right hand
269                                 KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,
270                                 KC_NO,          KC_NO,          KC_MS_BTN1,     KC_MS_UP,       KC_MS_BTN2,     KC_MS_WH_UP,    KC_NO,
271                                                 KC_NO,          KC_MS_LEFT,     KC_MS_DOWN,     KC_MS_RIGHT,    KC_MS_WH_DOWN,  KC_NO,
272                                 KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,          KC_NO,
273                                                                 KC_TRNS,        KC_TRNS,        KC_TRNS,        KC_NO,          KC_NO,
274 KC_NO,          KC_NO,
275 KC_NO,
276 KC_NO,          KC_TRNS,        KC_NO)
277 };
278
279 const uint16_t PROGMEM fn_actions[] = {
280 };
281
282 const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
283 {
284   switch(id) {
285     case KP_00:
286       if (record->event.pressed) {
287         return MACRO( T(KP_0), D(KP_0), END );
288       } else {
289         return MACRO( U(KP_0), END );
290       }
291       break;
292     case CA_Fx:
293       if (record->event.pressed) {
294         layer_on(FNAV);
295         return MACRO( D(LALT), D(LCTL), END );
296       } else {
297         layer_off(FNAV);
298         return MACRO( U(LCTL), U(LALT), END );
299       }
300       break;
301   }
302   return MACRO_NONE;
303 };
304
305 // Runs just one time when the keyboard initializes.
306 void matrix_init_user(void) {
307 };
308
309 // Runs constantly in the background, in a loop.
310 void matrix_scan_user(void) {
311 };