summaryrefslogtreecommitdiff
path: root/keyboards/id80/keymaps/rverst
diff options
context:
space:
mode:
authorRobert Verst <github@verst.eu>2021-03-17 17:44:21 +0100
committerGitHub <noreply@github.com>2021-03-17 09:44:21 -0700
commit3bc7f46412e6e6c829aaff6d0f15c4cf36011948 (patch)
treefac20a5310fbd7d26a7763f02445b367d8d9b8d1 /keyboards/id80/keymaps/rverst
parent8a2d3a8861588646c8563dfde080e49358faa245 (diff)
downloadqmk_firmware-3bc7f46412e6e6c829aaff6d0f15c4cf36011948.tar.gz
qmk_firmware-3bc7f46412e6e6c829aaff6d0f15c4cf36011948.zip
[Keymap] Add userspace rverst (#12205)
Co-authored-by: Robert Verst <robert.verst@tobit.com>
Diffstat (limited to 'keyboards/id80/keymaps/rverst')
-rw-r--r--keyboards/id80/keymaps/rverst/keymap.c80
-rw-r--r--keyboards/id80/keymaps/rverst/readme.md23
-rw-r--r--keyboards/id80/keymaps/rverst/rverst.json499
3 files changed, 602 insertions, 0 deletions
diff --git a/keyboards/id80/keymaps/rverst/keymap.c b/keyboards/id80/keymaps/rverst/keymap.c
new file mode 100644
index 0000000000..73bf8899ac
--- /dev/null
+++ b/keyboards/id80/keymaps/rverst/keymap.c
@@ -0,0 +1,80 @@
+/* Copyright 2021 Robert Verst <robert@verst.eu> @rverst
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "rverst.h"
+
+//#define CLOSED_CASE // no underglow RGB visible
+
+// clang-format off
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [0] = LAYOUT(
+ 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 , MO(4) , KC_DEL ,
+ 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_PGUP,
+ 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_PGDN,
+ KC_ESC , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_ENT ,
+ 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,
+ KC_LCTL, KC_LALT, KC_LGUI, KC_SPC , OSL(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+ [1] = LAYOUT(
+ RV_SNAP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE,
+ RV_DEG , RV_SUP1, RV_SUP2, RV_SUP3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RV_UNEQ, RV_PM , KC_TRNS, KC_VOLU,
+ KC_TRNS, KC_TRNS, KC_TRNS, RV_EUR , RV_RT , RV_TM , KC_TRNS, RV_UUML, KC_TRNS, RV_OUML, KC_TRNS, KC_TRNS, KC_PEQL, KC_TRNS, KC_VOLD,
+ KC_CAPS, RV_AUML, RV_SZ , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RV_LOCK, KC_TRNS, KC_PAST, KC_PENT,
+ KC_TRNS, KC_TRNS, KC_TRNS, RV_CC , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PDOT, KC_PSLS, KC_TRNS, KC_MSTP,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_RGUI, KC_MPRV, KC_MPLY, KC_MNXT
+ ),
+ [2] = LAYOUT(
+ 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_TRNS, MO(4) , KC_MUTE,
+ 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_VOLU,
+ KC_TAB , KC_Q , KC_W , KC_F , KC_P , KC_G , KC_J , KC_L , KC_U , KC_Y , KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_VOLD,
+ KC_ESC , KC_A , KC_R , KC_S , KC_T , KC_D , KC_H , KC_N , KC_E , KC_I , KC_O , KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_K , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, KC_UP,
+ KC_LCTL, KC_LALT, KC_LGUI, KC_SPC , OSL(3) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+ [3] = LAYOUT(
+ RV_SNAP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE,
+ RV_DEG , RV_SUP1, RV_SUP2, RV_SUP3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RV_UNEQ, RV_PM , KC_TRNS, KC_VOLU,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RV_LOCK, RV_UUML, KC_TRNS, KC_TRNS, KC_TRNS, KC_PEQL, KC_TRNS, KC_VOLD,
+ KC_CAPS, RV_AUML, RV_RT , RV_SZ , RV_TM , KC_TRNS, KC_TRNS, KC_TRNS, RV_EUR , KC_TRNS, RV_OUML, KC_PAST, KC_PENT,
+ KC_TRNS, KC_TRNS, KC_TRNS, RV_CC , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PDOT, KC_PSLS, KC_TRNS, KC_MSTP,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_RGUI, KC_MPRV, KC_MPLY, KC_MNXT
+ ),
+ [4] = LAYOUT(
+ EEP_RST, RV_SM0 , RV_SM1 , RV_SM2 , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , DF(0) , DF(2) , KC_TRNS, MO(5) ,
+ RV_SAYM, RV_SM3 , RV_SM4 , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
+ KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
+ KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
+ KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , RGB_TOG,
+ KC_NO , KC_NO , GUI_ON , KC_NO , KC_NO , RCG_SWP, RGB_RMOD,RGB_M_P, RGB_MOD
+ ),
+ [5] = LAYOUT(
+ RESET , RV_SM0S, RV_SM1S, RV_SM2S, KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_TRNS,
+ KC_NO , RV_SM3S, RV_SM4S, KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
+ KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
+ KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
+ KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
+ KC_NO , KC_NO , GUI_OFF, KC_NO , KC_NO , RCG_NRM, KC_NO , KC_NO , KC_NO
+ )
+};
+// clang-format on
+
+void keyboard_post_init_keymap(void) {
+#ifdef CLOSED_CASE
+ if (rgblight_is_enabled()) {
+ rgblight_disable();
+ }
+#endif
+}
diff --git a/keyboards/id80/keymaps/rverst/readme.md b/keyboards/id80/keymaps/rverst/readme.md
new file mode 100644
index 0000000000..ba33980edb
--- /dev/null
+++ b/keyboards/id80/keymaps/rverst/readme.md
@@ -0,0 +1,23 @@
+# idobao id80
+
+This is my layout for the idobao id80. It depends of my [user files](../../../../users/rverst)
+and the main goal is to give an convenient and unified access to some special keys
+(umlauts, ß, €) for different operating systems (Mac, Windows and Linux).
+
+## Overview
+
+- Layer 0 is the base US-ANSI layout with Mac-style system keys and a OSL-Key for Layer 1 right of the space bar.
+- Layer 1 has the special keys and some media-functions like mute, volume up/down etc.
+- Layer 2 and 3 are basically the same as Layer 0 and 1 but in Colemak-Layout
+- Layer 4 and 5 has some functions like switching the keyboard mode, switching the default layer etc.
+
+
+## Keyboard modes
+
+- *F1:* Mac Unicode mode (use 'Unicode Hex Input' as input source)
+- *F2:* Windows Unicode mode (use [WinCompse](https://github.com/SamHocevar/wincompose) software)
+- *F3:* Linux Unicode mode (not tested yet but should work out of the box)
+- *1:* Mac legacy mode (uses option-sequences, e.g. `<option>+u a` for an `ä`), if I'm not able to set the input source
+- *2:* Windows legacy mode (uses altgr-sequences e.g. `<altgr>+0228` for an `ä`, if I'm not able to use WinCompose)
+
+Layer 4 to switch the modes temporary, layer 5 to switch and save to eeprom.
diff --git a/keyboards/id80/keymaps/rverst/rverst.json b/keyboards/id80/keymaps/rverst/rverst.json
new file mode 100644
index 0000000000..804a7d93c8
--- /dev/null
+++ b/keyboards/id80/keymaps/rverst/rverst.json
@@ -0,0 +1,499 @@
+{
+ "keyboard": "id80",
+ "keymap": "rverst",
+ "layout": "LAYOUT",
+ "layers": [
+ [
+ "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",
+ "MO(4)",
+ "KC_DEL",
+ "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_PGUP",
+ "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_PGDN",
+ "KC_ESC",
+ "KC_A",
+ "KC_S",
+ "KC_D",
+ "KC_F",
+ "KC_G",
+ "KC_H",
+ "KC_J",
+ "KC_K",
+ "KC_L",
+ "KC_SCLN",
+ "KC_QUOT",
+ "KC_ENT",
+ "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",
+ "KC_LCTL",
+ "KC_LALT",
+ "KC_LGUI",
+ "KC_SPC",
+ "OSL(1)",
+ "KC_RCTL",
+ "KC_LEFT",
+ "KC_DOWN",
+ "KC_RGHT"
+ ],
+ [
+ "RV_SNAP",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_MUTE",
+ "RV_DEG",
+ "RV_SUP1",
+ "RV_SUP2",
+ "RV_SUP3",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "RV_UNEQ",
+ "RV_PM",
+ "KC_TRNS",
+ "KC_VOLU",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "RV_EUR",
+ "RV_RT",
+ "RV_TM",
+ "KC_TRNS",
+ "RV_UUML",
+ "KC_TRNS",
+ "RV_OUML",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_PEQL",
+ "KC_TRNS",
+ "KC_VOLD",
+ "KC_CAPS",
+ "RV_AUML",
+ "RV_SZ",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "RV_LOCK",
+ "KC_TRNS",
+ "KC_PAST",
+ "KC_PENT",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "RV_CC",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_PDOT",
+ "KC_PSLS",
+ "KC_TRNS",
+ "KC_MSTP",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_RGUI",
+ "KC_MPRV",
+ "KC_MPLY",
+ "KC_MNXT"
+ ],
+ [
+ "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_TRNS",
+ "MO(4)",
+ "KC_MUTE",
+ "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_VOLU",
+ "KC_TAB",
+ "KC_Q",
+ "KC_W",
+ "KC_F",
+ "KC_P",
+ "KC_G",
+ "KC_J",
+ "KC_L",
+ "KC_U",
+ "KC_Y",
+ "KC_SCLN",
+ "KC_LBRC",
+ "KC_RBRC",
+ "KC_BSLS",
+ "KC_VOLD",
+ "KC_ESC",
+ "KC_A",
+ "KC_R",
+ "KC_S",
+ "KC_T",
+ "KC_D",
+ "KC_H",
+ "KC_N",
+ "KC_E",
+ "KC_I",
+ "KC_O",
+ "KC_QUOT",
+ "KC_ENT",
+ "KC_LSFT",
+ "KC_Z",
+ "KC_X",
+ "KC_C",
+ "KC_V",
+ "KC_B",
+ "KC_K",
+ "KC_M",
+ "KC_COMM",
+ "KC_DOT",
+ "KC_SLSH",
+ "KC_RSFT",
+ "KC_UP",
+ "KC_LCTL",
+ "KC_LALT",
+ "KC_LGUI",
+ "KC_SPC",
+ "OSL(3)",
+ "KC_RCTL",
+ "KC_LEFT",
+ "KC_DOWN",
+ "KC_RGHT"
+ ],
+ [
+ "RV_SNAP",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_MUTE",
+ "RV_DEG",
+ "RV_SUP1",
+ "RV_SUP2",
+ "RV_SUP3",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "RV_UNEQ",
+ "RV_PM",
+ "KC_TRNS",
+ "KC_VOLU",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "RV_LOCK",
+ "RV_UUML",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_PEQL",
+ "KC_TRNS",
+ "KC_VOLD",
+ "KC_CAPS",
+ "RV_AUML",
+ "RV_RT",
+ "RV_SZ",
+ "RV_TM",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "RV_EUR",
+ "KC_TRNS",
+ "RV_OUML",
+ "KC_PAST",
+ "KC_PENT",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "RV_CC",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_PDOT",
+ "KC_PSLS",
+ "KC_TRNS",
+ "KC_MSTP",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_TRNS",
+ "KC_RGUI",
+ "KC_MPRV",
+ "KC_MPLY",
+ "KC_MNXT"
+ ],
+ [
+ "EEP_RST",
+ "RV_SM0",
+ "RV_SM1",
+ "RV_SM2",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "DF(0)",
+ "DF(2)",
+ "KC_TRNS",
+ "MO(5)",
+ "RV_SAYM",
+ "RV_SM3",
+ "RV_SM4",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_TRNS",
+ "RGB_HUI",
+ "RGB_SAI",
+ "RGB_VAI",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "RGB_TOG",
+ "KC_NO",
+ "KC_NO",
+ "GUI_ON",
+ "KC_NO",
+ "KC_NO",
+ "RCG_SWP",
+ "RGB_RMOD",
+ "RGB_M_P",
+ "RGB_MOD"
+ ],
+ [
+ "RESET",
+ "RV_SM0S",
+ "RV_SM1S",
+ "RV_SM2S",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_TRNS",
+ "KC_NO",
+ "RV_SM3S",
+ "RV_SM4S",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO",
+ "GUI_OFF",
+ "KC_NO",
+ "KC_NO",
+ "RCG_NRM",
+ "KC_NO",
+ "KC_NO",
+ "KC_NO"
+ ]
+ ]
+}