aboutsummaryrefslogtreecommitdiff
path: root/keyboards
diff options
context:
space:
mode:
authorQMK Bot <hello@qmk.fm>2021-06-24 02:22:11 +0000
committerQMK Bot <hello@qmk.fm>2021-06-24 02:22:11 +0000
commitb69fa51ec39d2825067b11f065ff8e59e41d8dc9 (patch)
treec36f3c63b8472a1f5b951cc9e2e5a03df1532fee /keyboards
parent1ea01765e19bf84b9a09954443b7d64be2bec0c7 (diff)
parent909d9c228fb03750170aa7ca49ea10d08a6e1113 (diff)
downloadqmk_firmware-b69fa51ec39d2825067b11f065ff8e59e41d8dc9.tar.gz
qmk_firmware-b69fa51ec39d2825067b11f065ff8e59e41d8dc9.zip
Merge remote-tracking branch 'origin/master' into develop
Diffstat (limited to 'keyboards')
-rw-r--r--keyboards/crkbd/keymaps/snowe/config.h55
-rw-r--r--keyboards/crkbd/keymaps/snowe/keycode_aliases.h81
-rw-r--r--keyboards/crkbd/keymaps/snowe/keymap.c190
-rw-r--r--keyboards/crkbd/keymaps/snowe/rules.mk25
-rw-r--r--keyboards/sowbug/ansi_tkl/keymaps/default/keymap.c2
-rw-r--r--keyboards/sowbug/ansi_tkl/keymaps/sowbug/keymap.c48
6 files changed, 400 insertions, 1 deletions
diff --git a/keyboards/crkbd/keymaps/snowe/config.h b/keyboards/crkbd/keymaps/snowe/config.h
new file mode 100644
index 000000000..b624b589b
--- /dev/null
+++ b/keyboards/crkbd/keymaps/snowe/config.h
@@ -0,0 +1,55 @@
1/*
2This is the c configuration file for the keymap
3
4Copyright 2012 Jun Wako <wakojun@gmail.com>
5Copyright 2015 Jack Humbert
6
7This program is free software: you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published by
9the Free Software Foundation, either version 2 of the License, or
10(at your option) any later version.
11
12This program is distributed in the hope that it will be useful,
13but WITHOUT ANY WARRANTY; without even the implied warranty of
14MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15GNU General Public License for more details.
16
17You should have received a copy of the GNU General Public License
18along with this program. If not, see <http://www.gnu.org/licenses/>.
19*/
20
21#pragma once
22
23//#define USE_MATRIX_I2C
24
25/* Select hand configuration */
26
27#define MASTER_LEFT
28// #define MASTER_RIGHT
29// #define EE_HANDS
30
31#define USE_SERIAL_PD2
32
33#define TAPPING_FORCE_HOLD
34#define TAPPING_TERM 200
35
36#define IGNORE_MOD_TAP_INTERRUPT
37#undef PERMISSIVE_HOLD
38
39#ifdef RGBLIGHT_ENABLE
40 #undef RGBLED_NUM
41 #define RGBLIGHT_ANIMATIONS
42 #define RGBLED_NUM 27
43 #define RGBLIGHT_LIMIT_VAL 120
44 #define RGBLIGHT_HUE_STEP 10
45 #define RGBLIGHT_SAT_STEP 17
46 #define RGBLIGHT_VAL_STEP 17
47#endif
48
49#define OLED_FONT_H "keyboards/crkbd/lib/glcdfont.c"
50
51// fix for me putting alt under A and being a fast typist
52#define IGNORE_MOD_TAP_INTERRUPT
53//#define IGNORE_MOD_TAP_INTERRUPT_PER_KEY
54
55#define LAYER_STATE_8BIT \ No newline at end of file
diff --git a/keyboards/crkbd/keymaps/snowe/keycode_aliases.h b/keyboards/crkbd/keymaps/snowe/keycode_aliases.h
new file mode 100644
index 000000000..bd70a79aa
--- /dev/null
+++ b/keyboards/crkbd/keymaps/snowe/keycode_aliases.h
@@ -0,0 +1,81 @@
1/*
2 * Copyright 2020 Drashna Jaelre <@drashna>
3 * Copyright 2021 Tyler Thrailkill <@snowe/@snowe2010>
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 2 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19#pragma once
20
21#define GUI_ESC GUI_T(KC_ESC)
22#define CTL_ESC CTL_T(KC_ESC)
23#define SH_BKSP SFT_T(KC_BSPC)
24#define SP_RAIS LT(_UPPER, KC_SPC)
25
26#define LOWER MO(_LOWER)
27#define RAISE MO(_UPPER)
28#define ADJUST MO(_ADJUST)
29#define TG_MODS TG(_MODS)
30//#define TG_GAME TG(_GAMEPAD)
31//#define OS_LWR OSL(_LOWER)
32//#define OS_RSE OSL(_UPPER)
33
34//#define KC_SEC1 KC_SECRET_1
35//#define KC_SEC2 KC_SECRET_2
36//#define KC_SEC3 KC_SECRET_3
37//#define KC_SEC4 KC_SECRET_4
38//#define KC_SEC5 KC_SECRET_5
39
40#define QWERTY KC_QWERTY
41#define DVORAK KC_DVORAK
42#define COLEMAK KC_COLEMAK
43#define WORKMAN KC_WORKMAN
44
45#define KC_RESET RESET
46#define KC_RST KC_RESET
47
48#ifdef SWAP_HANDS_ENABLE
49# define KC_C1R3 SH_TT
50#else // SWAP_HANDS_ENABLE
51# define KC_C1R3 KC_BSPC
52#endif // SWAP_HANDS_ENABLE
53
54#define BK_LWER LT(_LOWER, KC_BSPC)
55#define SP_LWER LT(_LOWER, KC_SPC)
56#define DL_RAIS LT(_UPPER, KC_DEL)
57#define ET_RAIS LT(_UPPER, KC_ENTER)
58#define SFT_ENT SFT_T(KC_ENTER)
59#define SP_RAIS LT(_UPPER, KC_SPC)
60
61/* OSM keycodes, to keep things clean and easy to change */
62#define KC_MLSF OSM(MOD_LSFT)
63#define KC_MRSF OSM(MOD_RSFT)
64
65#define OS_LGUI OSM(MOD_LGUI)
66#define OS_RGUI OSM(MOD_RGUI)
67#define OS_LSFT OSM(MOD_LSFT)
68#define OS_RSFT OSM(MOD_RSFT)
69#define OS_LCTL OSM(MOD_LCTL)
70#define OS_RCTL OSM(MOD_RCTL)
71#define OS_LALT OSM(MOD_LALT)
72#define OS_RALT OSM(MOD_RALT)
73#define OS_MEH OSM(MOD_MEH)
74#define OS_HYPR OSM(MOD_HYPR)
75
76#define ALT_APP ALT_T(KC_APP)
77
78#define MG_NKRO MAGIC_TOGGLE_NKRO
79
80#define UC_IRNY UC(0x2E2E)
81#define UC_CLUE UC(0x203D)
diff --git a/keyboards/crkbd/keymaps/snowe/keymap.c b/keyboards/crkbd/keymaps/snowe/keymap.c
new file mode 100644
index 000000000..4dfd6ecbe
--- /dev/null
+++ b/keyboards/crkbd/keymaps/snowe/keymap.c
@@ -0,0 +1,190 @@
1/*
2Copyright 2019 @foostan
3Copyright 2020 Drashna Jaelre <@drashna>
4Copyright 2021 Tyler Thrailkill <@snowe/@snowe2010>
5
6This program is free software: you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation, either version 2 of the License, or
9(at your option) any later version.
10
11This program is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20#include QMK_KEYBOARD_H
21#include "snowe.h"
22
23// Symbols chart
24// ↯ hyper key (ctrl, alt, shift, super)
25// ⌘ command
26// ⌥ option
27// ⌃ control
28// ⇧ shift
29// ⌫ backspace
30// ⌦ delete
31// ⎋ escape
32// ↩ enter
33
34/* Wrapper
35 * ,-----------------------------------------------. .-----------------------------------------------.
36 * | Tab | K01 | K02 | K03 | K04 | K05 | | K06 | K07 | K08 | K09 | K0A | |
37 * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
38 * | ⌘/⎋ | ⌃/K11 | K12 | K13 | K14 | K15 | | K16 | K17 | K18 | K19 | ⌥/K1A | |
39 * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
40 * | ↯/⌦ | ⌥/K21 | K22 | K23 | K24 | K25 | | K26 | K27 | K28 | K29 | ⌃/K2A | |
41 * `-----------------------. | | .-----------------------'
42 * |-------+-------+-------| |-------+-------+-------|
43 * | ⌃ | ⇧/↩ | ⌫/LWR | | ␣/RAY | ␣ | R ⌥ |
44 * `-----------------------' '-----------------------'
45 */
46// clang-format off
47#define LAYOUT_crkbd_base( \
48 K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
49 K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
50 K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
51 ) \
52 LAYOUT_wrapper( \
53 KC_TAB, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_MINS, \
54 GUI_ESC, CTL_T(K11), K12, K13, K14, K15, K16, K17, K18, K19, ALT_T(K1A), KC_QUOT, \
55 HYPR_T(KC_DEL), ALT_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, RCTL_T(K2A), KC_BSLS, \
56 KC_LCTL, LOWER, SH_BKSP, KC_ENTER, SP_RAIS, KC_LALT \
57 )
58// clang-format on
59#define LAYOUT_crkbd_base_wrapper(...) LAYOUT_crkbd_base(__VA_ARGS__)
60
61const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
62 // clang-format off
63 /* QWERTY
64 * ,-----------------------------------------------. .-----------------------------------------------.
65 * | | Q | W | E | R | T | | Y | U | I | O | P | |
66 * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
67 * | | A | S | D | F | G | | H | J | K | L | ; | ' |
68 * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
69 * | | Z | X | C | V | B | | N | M | , | . | / | |
70 * `-----------------------. | | .-----------------------'
71 * |-------+-------+-------| |-------+-------+-------|
72 * | | | | | | | |
73 * `-----------------------' '-----------------------'
74 */
75 [_MAIN] = LAYOUT_crkbd_base_wrapper(
76 _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
77 _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
78 _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
79 ),
80
81 /* Lower
82 * ,-----------------------------------------------. .-----------------------------------------------.
83 * | ~ | ! | @ | # | $ | % | | ^ | & | * | ( | ) | |
84 * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
85 * | | | | | | | | | _ | + | [ | ] | |
86 * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
87 * | | | | | | | | | ← | ↑ | ↓ | → | |
88 * `-----------------------. | | .-----------------------'
89 * |-------+-------+-------| |-------+-------+-------|
90 * | | | | | | | |
91 * `-----------------------' '-----------------------'
92 */
93 [_LOWER] = LAYOUT_wrapper(
94 KC_TILDE, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_F11,
95 KC_F12 , _________________LOWER_L2__________________, _________________LOWER_R2__________________, KC_PIPE,
96 _______ , _________________LOWER_L3__________________, _________________LOWER_R3__________________, _______,
97 _______, _______, _______, _______, _______, _______
98 ),
99
100
101 /*
102 * ,-----------------------------------------------. .-----------------------------------------------.
103 * | | | | | | | | | | | | | |
104 * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
105 * | | | | | | | | | | | | | |
106 * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
107 * | | | | | | | | | | | | | |
108 * `-----------------------. | | .-----------------------'
109 * |-------+-------+-------| |-------+-------+-------|
110 * | | | | | | | |
111 * `-----------------------' '-----------------------'
112 */
113 /* Raise
114 * ,-----------------------------------------------. .-----------------------------------------------.
115 * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | |
116 * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
117 * | | | | | | | | | ← | ↑ | ↓ | → | |
118 * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
119 * | | | | | | | | | home |pg down| pg up | end | |
120 * `-----------------------. | | .-----------------------'
121 * |-------+-------+-------| |-------+-------+-------|
122 * | | | | | | | |
123 * `-----------------------' '-----------------------'
124 */
125 [_UPPER] = LAYOUT_wrapper( \
126 KC_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, _______,
127 _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS,
128 _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______,
129 _______, _______, _______, _______, _______, _______
130 ),
131
132 [_ADJUST] = LAYOUT_wrapper( \
133 _______, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, KC_RESET,
134 _______, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, EEP_RST,
135 _______, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, KC_MPLY,
136 _______, _______, _______, _______, _______, _______
137 )
138 // clang-format on
139};
140
141layer_state_t layer_state_set_user(layer_state_t state) { return update_tri_layer_state(state, _LOWER, _UPPER, _ADJUST); }
142
143bool process_record_user(uint16_t keycode, keyrecord_t *record) {
144 switch (keycode) {
145 case KC_LCTL:
146 case KC_RCTL:
147#ifdef OCEAN_DREAM_ENABLE
148 is_calm = (record->event.pressed) ? true : false;
149#endif
150#ifdef LUNA_ENABLE
151 if (record->event.pressed) {
152 isSneaking = true;
153 } else {
154 isSneaking = false;
155 }
156#endif
157 break;
158 case KC_SPC:
159#ifdef LUNA_ENABLE
160 if (record->event.pressed) {
161 isJumping = true;
162 showedJump = false;
163 } else {
164 isJumping = false;
165 }
166#endif
167 break;
168 }
169 return true;
170}
171
172// uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
173// switch (keycode) {
174// case ALT_T(KC_A):
175// case SH_BKSP:
176// return TAPPING_TERM + 500;
177// default:
178// return TAPPING_TERM;
179// }
180//}
181//
182// bool get_ignore_mod_tap_interrupt(uint16_t keycode, keyrecord_t *record) {
183// switch (keycode) {
184// case ALT_T(KC_A):
185// case SH_BKSP:
186// return true;
187// default:
188// return false;
189// }
190//} \ No newline at end of file
diff --git a/keyboards/crkbd/keymaps/snowe/rules.mk b/keyboards/crkbd/keymaps/snowe/rules.mk
new file mode 100644
index 000000000..fac462a68
--- /dev/null
+++ b/keyboards/crkbd/keymaps/snowe/rules.mk
@@ -0,0 +1,25 @@
1BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
2MOUSEKEY_ENABLE = no # Mouse keys(+4700)
3EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
4CONSOLE_ENABLE = no # Console for debug(+400)
5COMMAND_ENABLE = no # Commands for debug and configuration
6NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
7AUDIO_ENABLE = no # Audio output on port C6
8BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
9RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
10LEADER_ENABLE = no
11MIDI_ENABLE = no # MIDI controls
12UNICODE_ENABLE = no # Unicode
13BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
14SWAP_HANDS_ENABLE = no # Enable one-hand typing
15RGBLIGHT_TWINKLE = no
16OLED_DRIVER_ENABLE = yes
17RGB_MATRIX_ENABLE = yes
18
19OCEAN_DREAM_ENABLE = yes
20LUNA_ENABLE = no # disabled so travis build succeeds
21
22# if firmware size over limit, try this option
23CFLAGS += -flto
24
25WPM_ENABLE = yes
diff --git a/keyboards/sowbug/ansi_tkl/keymaps/default/keymap.c b/keyboards/sowbug/ansi_tkl/keymaps/default/keymap.c
index b7344b5b4..6570dedb0 100644
--- a/keyboards/sowbug/ansi_tkl/keymaps/default/keymap.c
+++ b/keyboards/sowbug/ansi_tkl/keymaps/default/keymap.c
@@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
25 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, \ 25 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, \
26 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ 26 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
27 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, \ 27 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, \
28 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RALT, KC_RCTL, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT \ 28 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_MENU, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT \
29 ), 29 ),
30 [1] = LAYOUT( 30 [1] = LAYOUT(
31 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, RESET , \ 31 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, RESET , \
diff --git a/keyboards/sowbug/ansi_tkl/keymaps/sowbug/keymap.c b/keyboards/sowbug/ansi_tkl/keymaps/sowbug/keymap.c
new file mode 100644
index 000000000..82414382e
--- /dev/null
+++ b/keyboards/sowbug/ansi_tkl/keymaps/sowbug/keymap.c
@@ -0,0 +1,48 @@
1/* Copyright 2021 Mike Tsao
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
17// keymaps/sowbug/keymap.c
18
19#include QMK_KEYBOARD_H
20
21const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
22 [0] = LAYOUT(
23 KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, \
24 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, \
25 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, \
26 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
27 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, \
28 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RALT, KC_RCTL, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT \
29 ),
30 [1] = LAYOUT(
31 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, RESET , \
32 _______, BL_TOGG, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_MSTP, KC_VOLU, \
33 _______, RGB_SPD, RGB_VAI, RGB_SPI, RGB_HUI, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MNXT, KC_VOLD, \
34 _______, RGB_RMOD,RGB_VAD, RGB_MOD, RGB_HUD, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, \
35 _______, RGB_TOG, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, \
36 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
37 ),
38 /*
39 [X] = LAYOUT(
40 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
41 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
42 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
43 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
44 _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, \
45 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
46 ),
47 */
48};