aboutsummaryrefslogtreecommitdiff
path: root/data
diff options
context:
space:
mode:
Diffstat (limited to 'data')
-rw-r--r--data/constants/keycodes/extras/keycodes_eurkey_0.0.1.hjson596
-rw-r--r--data/constants/keycodes/extras/keycodes_farsi_0.0.1.hjson2
-rw-r--r--data/mappings/info_config.hjson1
-rw-r--r--data/mappings/info_rules.hjson1
-rw-r--r--data/mappings/keyboard_aliases.hjson679
-rw-r--r--data/schemas/keyboard.jsonschema7
6 files changed, 1284 insertions, 2 deletions
diff --git a/data/constants/keycodes/extras/keycodes_eurkey_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_eurkey_0.0.1.hjson
new file mode 100644
index 0000000000..9ff217cff2
--- /dev/null
+++ b/data/constants/keycodes/extras/keycodes_eurkey_0.0.1.hjson
@@ -0,0 +1,596 @@
+{
+ "aliases": {
+/*
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
+ * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ │
+ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
+ * │ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ │
+ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
+ * │ │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ │
+ * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤
+ * │ │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ │
+ * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
+ * │ │ │ │ │ │ │ │ │
+ * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
+ */
+ "KC_GRV": {
+ "key": "EU_GRV",
+ "label": "`",
+ }
+ "KC_1": {
+ "key": "EU_1",
+ "label": "1",
+ }
+ "KC_2": {
+ "key": "EU_2",
+ "label": "2",
+ }
+ "KC_3": {
+ "key": "EU_3",
+ "label": "3",
+ }
+ "KC_4": {
+ "key": "EU_4",
+ "label": "4",
+ }
+ "KC_5": {
+ "key": "EU_5",
+ "label": "5",
+ }
+ "KC_6": {
+ "key": "EU_6",
+ "label": "6",
+ }
+ "KC_7": {
+ "key": "EU_7",
+ "label": "7",
+ }
+ "KC_8": {
+ "key": "EU_8",
+ "label": "8",
+ }
+ "KC_9": {
+ "key": "EU_9",
+ "label": "9",
+ }
+ "KC_0": {
+ "key": "EU_0",
+ "label": "0",
+ }
+ "KC_MINS": {
+ "key": "EU_MINS",
+ "label": "-",
+ }
+ "KC_EQL": {
+ "key": "EU_EQL",
+ "label": "=",
+ }
+ "KC_Q": {
+ "key": "EU_Q",
+ "label": "Q",
+ }
+ "KC_W": {
+ "key": "EU_W",
+ "label": "W",
+ }
+ "KC_E": {
+ "key": "EU_E",
+ "label": "E",
+ }
+ "KC_R": {
+ "key": "EU_R",
+ "label": "R",
+ }
+ "KC_T": {
+ "key": "EU_T",
+ "label": "T",
+ }
+ "KC_Y": {
+ "key": "EU_Y",
+ "label": "Y",
+ }
+ "KC_U": {
+ "key": "EU_U",
+ "label": "U",
+ }
+ "KC_I": {
+ "key": "EU_I",
+ "label": "I",
+ }
+ "KC_O": {
+ "key": "EU_O",
+ "label": "O",
+ }
+ "KC_P": {
+ "key": "EU_P",
+ "label": "P",
+ }
+ "KC_LBRC": {
+ "key": "EU_LBRC",
+ "label": "[",
+ }
+ "KC_RBRC": {
+ "key": "EU_RBRC",
+ "label": "]",
+ }
+ "KC_BSLS": {
+ "key": "EU_BSLS",
+ "label": "\\",
+ }
+ "KC_A": {
+ "key": "EU_A",
+ "label": "A",
+ }
+ "KC_S": {
+ "key": "EU_S",
+ "label": "S",
+ }
+ "KC_D": {
+ "key": "EU_D",
+ "label": "D",
+ }
+ "KC_F": {
+ "key": "EU_F",
+ "label": "F",
+ }
+ "KC_G": {
+ "key": "EU_G",
+ "label": "G",
+ }
+ "KC_H": {
+ "key": "EU_H",
+ "label": "H",
+ }
+ "KC_J": {
+ "key": "EU_J",
+ "label": "J",
+ }
+ "KC_K": {
+ "key": "EU_K",
+ "label": "K",
+ }
+ "KC_L": {
+ "key": "EU_L",
+ "label": "L",
+ }
+ "KC_SCLN": {
+ "key": "EU_SCLN",
+ "label": ";",
+ }
+ "KC_QUOT": {
+ "key": "EU_QUOT",
+ "label": "'",
+ }
+ "KC_Z": {
+ "key": "EU_Z",
+ "label": "Z",
+ }
+ "KC_X": {
+ "key": "EU_X",
+ "label": "X",
+ }
+ "KC_C": {
+ "key": "EU_C",
+ "label": "C",
+ }
+ "KC_V": {
+ "key": "EU_V",
+ "label": "V",
+ }
+ "KC_B": {
+ "key": "EU_B",
+ "label": "B",
+ }
+ "KC_N": {
+ "key": "EU_N",
+ "label": "N",
+ }
+ "KC_M": {
+ "key": "EU_M",
+ "label": "M",
+ }
+ "KC_COMM": {
+ "key": "EU_COMM",
+ "label": ",",
+ }
+ "KC_DOT": {
+ "key": "EU_DOT",
+ "label": ".",
+ }
+ "KC_SLSH": {
+ "key": "EU_SLSH",
+ "label": "/",
+ }
+/* Shifted symbols
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
+ * │ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │ │
+ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
+ * │ │ │ │ │ │ │ │ │ │ │ │ { │ } │ | │
+ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
+ * │ │ │ │ │ │ │ │ │ │ │ : │ " │ │
+ * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤
+ * │ │ │ │ │ │ │ │ │ < │ > │ ? │ │
+ * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
+ * │ │ │ │ │ │ │ │ │
+ * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
+ */
+ "S(EU_GRV)": {
+ "key": "EU_TILD",
+ "label": "~",
+ }
+ "S(EU_1)": {
+ "key": "EU_EXLM",
+ "label": "!",
+ }
+ "S(EU_2)": {
+ "key": "EU_AT",
+ "label": "@",
+ }
+ "S(EU_3)": {
+ "key": "EU_HASH",
+ "label": "#",
+ }
+ "S(EU_4)": {
+ "key": "EU_DLR",
+ "label": "$",
+ }
+ "S(EU_5)": {
+ "key": "EU_PERC",
+ "label": "%",
+ }
+ "S(EU_6)": {
+ "key": "EU_CIRC",
+ "label": "^",
+ }
+ "S(EU_7)": {
+ "key": "EU_AMPR",
+ "label": "&",
+ }
+ "S(EU_8)": {
+ "key": "EU_ASTR",
+ "label": "*",
+ }
+ "S(EU_9)": {
+ "key": "EU_LPRN",
+ "label": "(",
+ }
+ "S(EU_0)": {
+ "key": "EU_RPRN",
+ "label": ")",
+ }
+ "S(EU_MINS)": {
+ "key": "EU_UNDS",
+ "label": "_",
+ }
+ "S(EU_EQL)": {
+ "key": "EU_PLUS",
+ "label": "+",
+ }
+ "S(EU_LBRC)": {
+ "key": "EU_LCBR",
+ "label": "{",
+ }
+ "S(EU_RBRC)": {
+ "key": "EU_RCBR",
+ "label": "}",
+ }
+ "S(EU_BSLS)": {
+ "key": "EU_PIPE",
+ "label": "|",
+ }
+ "S(EU_SCLN)": {
+ "key": "EU_COLN",
+ "label": ":",
+ }
+ "S(EU_QUOT)": {
+ "key": "EU_DQUO",
+ "label": "\"",
+ }
+ "S(EU_COMM)": {
+ "key": "EU_LABK",
+ "label": "<",
+ }
+ "S(EU_DOT)": {
+ "key": "EU_RABK",
+ "label": ">",
+ }
+ "S(EU_SLSH)": {
+ "key": "EU_QUES",
+ "label": "?",
+ }
+/* AltGr symbols
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
+ * │ ` │ ¡ │ ª │ º │ £ │ € │ ^ │ ˚ │ „ │ “ │ ” │ – │ × │ │
+ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
+ * │ │ æ │ å │ ë │ ý │ þ │ ÿ │ ü │ ï │ ö │ œ │ « │ » │ ¬ │
+ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
+ * │ │ ä │ ß │ ð │ è │ é │ ù │ ú │ ij │ ø │ ° │ ´ │ │
+ * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤
+ * │ │ à │ á │ ç │ ì │ í │ ñ │ μ │ ò │ ó │ ¿ │ │
+ * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
+ * │ │ │ │ │ │ │ │ │
+ * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
+ */
+ "ALGR(EU_GRV)": {
+ "key": "EU_DGRV",
+ "label": "` (dead)",
+ }
+ "ALGR(EU_1)": {
+ "key": "EU_IEXL",
+ "label": "¡",
+ }
+ "ALGR(EU_2)": {
+ "key": "EU_FORD",
+ "label": "ª",
+ }
+ "ALGR(EU_3)": {
+ "key": "EU_MORD",
+ "label": "º",
+ }
+ "ALGR(EU_4)": {
+ "key": "EU_PND",
+ "label": "£",
+ }
+ "ALGR(EU_5)": {
+ "key": "EU_EURO",
+ "label": "€",
+ }
+ "ALGR(EU_6)": {
+ "key": "EU_DCIR",
+ "label": "^ (dead)",
+ }
+ "ALGR(EU_7)": {
+ "key": "EU_RNGA",
+ "label": "˚ (dead)",
+ }
+ "ALGR(EU_8)": {
+ "key": "EU_DLQU",
+ "label": "„",
+ }
+ "ALGR(EU_9)": {
+ "key": "EU_LDQU",
+ "label": "“",
+ }
+ "ALGR(EU_0)": {
+ "key": "EU_RDQU",
+ "label": "”",
+ }
+ "ALGR(EU_MINS)": {
+ "key": "EU_NDSH",
+ "label": "–",
+ }
+ "ALGR(EU_EQL)": {
+ "key": "EU_MUL",
+ "label": "×",
+ }
+ "ALGR(EU_Q)": {
+ "key": "EU_AE",
+ "label": "æ",
+ }
+ "ALGR(EU_W)": {
+ "key": "EU_ARNG",
+ "label": "Å",
+ }
+ "ALGR(EU_E)": {
+ "key": "EU_EDIA",
+ "label": "Ë",
+ }
+ "ALGR(EU_R)": {
+ "key": "EU_YACU",
+ "label": "Ý",
+ }
+ "ALGR(EU_T)": {
+ "key": "EU_THRN",
+ "label": "Þ",
+ }
+ "ALGR(EU_Y)": {
+ "key": "EU_YDIA",
+ "label": "Ÿ",
+ }
+ "ALGR(EU_U)": {
+ "key": "EU_UDIA",
+ "label": "Ü",
+ }
+ "ALGR(EU_I)": {
+ "key": "EU_IDIA",
+ "label": "Ï",
+ }
+ "ALGR(EU_O)": {
+ "key": "EU_ODIA",
+ "label": "Ö",
+ }
+ "ALGR(EU_P)": {
+ "key": "EU_OE",
+ "label": "Œ",
+ }
+ "ALGR(EU_LBRC)": {
+ "key": "EU_LDAQ",
+ "label": "«",
+ }
+ "ALGR(EU_RBRC)": {
+ "key": "EU_RDAQ",
+ "label": "»",
+ }
+ "ALGR(EU_BSLS)": {
+ "key": "EU_NOT",
+ "label": "¬",
+ }
+ "ALGR(EU_A)": {
+ "key": "EU_ADIA",
+ "label": "Ä",
+ }
+ "ALGR(EU_S)": {
+ "key": "EU_SS",
+ "label": "ß",
+ }
+ "ALGR(EU_D)": {
+ "key": "EU_ETH",
+ "label": "Ð",
+ }
+ "ALGR(EU_F)": {
+ "key": "EU_EGRV",
+ "label": "È",
+ }
+ "ALGR(EU_G)": {
+ "key": "EU_EACU",
+ "label": "É",
+ }
+ "ALGR(EU_H)": {
+ "key": "EU_UGRV",
+ "label": "Ù",
+ }
+ "ALGR(EU_J)": {
+ "key": "EU_UACU",
+ "label": "Ú",
+ }
+ "ALGR(EU_K)": {
+ "key": "EU_IJ",
+ "label": "IJ",
+ }
+ "ALGR(EU_L)": {
+ "key": "EU_OSTR",
+ "label": "Ø",
+ }
+ "ALGR(EU_SCLN)": {
+ "key": "EU_DEG",
+ "label": "°",
+ }
+ "ALGR(EU_QUOT)": {
+ "key": "EU_ACUT",
+ "label": "´ (dead)",
+ }
+ "ALGR(EU_Z)": {
+ "key": "EU_AGRV",
+ "label": "À",
+ }
+ "ALGR(EU_X)": {
+ "key": "EU_AACU",
+ "label": "Á",
+ }
+ "ALGR(EU_C)": {
+ "key": "EU_CCED",
+ "label": "Ç",
+ }
+ "ALGR(EU_V)": {
+ "key": "EU_IGRV",
+ "label": "Ì",
+ }
+ "ALGR(EU_B)": {
+ "key": "EU_IACU",
+ "label": "Í",
+ }
+ "ALGR(EU_N)": {
+ "key": "EU_NTIL",
+ "label": "Ñ",
+ }
+ "ALGR(EU_M)": {
+ "key": "EU_DGRK",
+ "label": "μ (dead Greek key)",
+ }
+ "ALGR(EU_COMM)": {
+ "key": "EU_OGRV",
+ "label": "Ò",
+ }
+ "ALGR(EU_DOT)": {
+ "key": "EU_OACU",
+ "label": "Ó",
+ }
+ "ALGR(EU_SLSH)": {
+ "key": "EU_IQUE",
+ "label": "¿",
+ }
+/* Shift+AltGr symbols
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
+ * │ ~ │ ¹ │ ² │ ³ │ ¥ │ ¢ │ ˇ │ ¯ │ ‚ │ ‘ │ ’ │ — │ ÷ │ │
+ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
+ * │ │ │ │ │ │ │ │ │ │ │ │ ‹ │ › │ ¦ │
+ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
+ * │ │ │ § │ │ │ │ │ │ │ │ · │ ¨ │ │
+ * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤
+ * │ │ │ │ │ │ │ │ │ │ │ … │ │
+ * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
+ * │ │ │ │ │ │ │ │ │
+ * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
+ */
+ "ALGR(EU_TILD)": {
+ "key": "EU_DTIL",
+ "label": "~ (dead)",
+ }
+ "S(ALGR(EU_1))": {
+ "key": "EU_SUP1",
+ "label": "¹",
+ }
+ "S(ALGR(EU_2))": {
+ "key": "EU_SUP2",
+ "label": "²",
+ }
+ "S(ALGR(EU_3))": {
+ "key": "EU_SUP3",
+ "label": "³",
+ }
+ "ALGR(EU_DLR)": {
+ "key": "EU_YEN",
+ "label": "¥",
+ }
+ "S(EU_EURO)": {
+ "key": "EU_CENT",
+ "label": "¢",
+ }
+ "S(EU_DCIR)": {
+ "key": "EU_CARN",
+ "label": "ˇ (dead)",
+ }
+ "S(ALGR(EU_7))": {
+ "key": "EU_MACR",
+ "label": "¯ (dead)",
+ }
+ "S(EU_DLQU)": {
+ "key": "EU_SLQU",
+ "label": "‚",
+ }
+ "S(EU_LDQU)": {
+ "key": "EU_LSQU",
+ "label": "‘",
+ }
+ "S(EU_RDQU)": {
+ "key": "EU_RSQU",
+ "label": "’",
+ }
+ "S(EU_NDSH)": {
+ "key": "EU_MDSH",
+ "label": "—",
+ }
+ "S(EU_MUL)": {
+ "key": "EU_DIV",
+ "label": "÷",
+ }
+ "S(EU_LDAQ)": {
+ "key": "EU_LSAQ",
+ "label": "‹",
+ }
+ "S(EU_RDAQ)": {
+ "key": "EU_RSAQ",
+ "label": "›",
+ }
+ "S(ALGR(EU_BSLS))": {
+ "key": "EU_BRKP",
+ "label": "¦",
+ }
+ "S(ALGR(EU_S))": {
+ "key": "EU_SECT",
+ "label": "§",
+ }
+ "S(ALGR(EU_SCLN))": {
+ "key": "EU_MDDT",
+ "label": "·",
+ }
+ "ALGR(EU_DQUO)": {
+ "key": "EU_DIAE",
+ "label": "¨ (dead)",
+ }
+ "ALGR(EU_QUES)": {
+ "key": "EU_ELLP",
+ "label": "…",
+ }
+ }
+} \ No newline at end of file
diff --git a/data/constants/keycodes/extras/keycodes_farsi_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_farsi_0.0.1.hjson
index d59b6fab26..68d209a5f3 100644
--- a/data/constants/keycodes/extras/keycodes_farsi_0.0.1.hjson
+++ b/data/constants/keycodes/extras/keycodes_farsi_0.0.1.hjson
@@ -527,7 +527,7 @@
"key": "FA_PIPE",
"label": "|",
}
- "ALGR(FA_RA)": {
+ "ALGR(FA_RE)": {
"key": "FA_SUBA",
"label": "ٖ",
}
diff --git a/data/mappings/info_config.hjson b/data/mappings/info_config.hjson
index 8d3e3c7f0e..b643553b52 100644
--- a/data/mappings/info_config.hjson
+++ b/data/mappings/info_config.hjson
@@ -200,6 +200,7 @@
"SPLIT_WPM_ENABLE": {"info_key": "split.transport.sync.wpm", "value_type": "flag"},
// Tapping
+ "CHORDAL_HOLD": {"info_key": "tapping.chordal_hold", "value_type": "flag"},
"HOLD_ON_OTHER_KEY_PRESS": {"info_key": "tapping.hold_on_other_key_press", "value_type": "flag"},
"HOLD_ON_OTHER_KEY_PRESS_PER_KEY": {"info_key": "tapping.hold_on_other_key_press_per_key", "value_type": "flag"},
"PERMISSIVE_HOLD": {"info_key": "tapping.permissive_hold", "value_type": "flag"},
diff --git a/data/mappings/info_rules.hjson b/data/mappings/info_rules.hjson
index 64972af63b..00685b5b5f 100644
--- a/data/mappings/info_rules.hjson
+++ b/data/mappings/info_rules.hjson
@@ -55,5 +55,6 @@
// Items we want flagged in lint
"CTPC": {"info_key": "_deprecated.ctpc", "deprecated": true, "replace_with": "CONVERT_TO=proton_c"},
"CONVERT_TO_PROTON_C": {"info_key": "_deprecated.ctpc", "deprecated": true, "replace_with": "CONVERT_TO=proton_c"},
+ "DEFAULT_FOLDER": {"info_key": "_deprecated.default_folder", "deprecated": true},
"VIAL_ENABLE": {"info_key": "_invalid.vial", "invalid": true}
}
diff --git a/data/mappings/keyboard_aliases.hjson b/data/mappings/keyboard_aliases.hjson
index 72f6994c09..09549baf69 100644
--- a/data/mappings/keyboard_aliases.hjson
+++ b/data/mappings/keyboard_aliases.hjson
@@ -140,6 +140,9 @@
"custommk/genesis": {
"target": "custommk/genesis/rev1"
},
+ "cxt_studio":{
+ "target":"cxt_studio/12e4"
+ },
"daisy": {
"target": "ktec/daisy"
},
@@ -194,6 +197,9 @@
"ergodone": {
"target": "ktec/ergodone"
},
+ "ergodox_stm32": {
+ "target": "handwired/ergodox_stm32"
+ },
"ergoinu": {
"target": "dm9records/ergoinu"
},
@@ -1515,6 +1521,9 @@
"ymd96": {
"target": "ymdk/ymd96"
},
+ "ymdk/id75": {
+ "target": "ymdk/id75/f103"
+ },
"ymdk_np21": {
"target": "ymdk/np21"
},
@@ -1552,5 +1561,675 @@
},
"dnworks/9973": {
"target": "dnworks/tkl87"
+ },
+ // DEFAULT_FOLDER removed during 2025 Q1 cycle
+ "0_sixty": {
+ "target": "0_sixty/base"
+ },
+ "0xcb/splaytoraid": {
+ "target": "0xcb/splaytoraid/rp2040_ce"
+ },
+ "1upkeyboards/pi40": {
+ "target": "1upkeyboards/pi40/mit_v1_0"
+ },
+ "1upkeyboards/pi50": {
+ "target": "1upkeyboards/pi50/grid"
+ },
+ "1upkeyboards/sweet16": {
+ "target": "1upkeyboards/sweet16/v1"
+ },
+ "25keys/aleth42": {
+ "target": "25keys/aleth42/rev1"
+ },
+ "25keys/zinc": {
+ "target": "25keys/zinc/rev1"
+ },
+ "40percentclub/i75": {
+ "target": "40percentclub/i75/promicro"
+ },
+ "40percentclub/polyandry": {
+ "target": "40percentclub/polyandry/promicro"
+ },
+ "8pack": {
+ "target": "8pack/rev12"
+ },
+ "adkb96": {
+ "target": "adkb96/rev1"
+ },
+ "adm42": {
+ "target": "adm42/rev4"
+ },
+ "aeboards/satellite": {
+ "target": "aeboards/satellite/rev1"
+ },
+ "atreus": {
+ "target": "atreus/astar"
+ },
+ "atreyu": {
+ "target": "atreyu/rev1"
+ },
+ "biacco42/ergo42": {
+ "target": "biacco42/ergo42/rev1"
+ },
+ "binepad/bn009": {
+ "target": "binepad/bn009/r2"
+ },
+ "binepad/bnr1": {
+ "target": "binepad/bnr1/v2"
+ },
+ "boston_meetup": {
+ "target": "boston_meetup/2019"
+ },
+ "bpiphany/frosty_flake": {
+ "target": "bpiphany/frosty_flake/20140521"
+ },
+ "buzzard": {
+ "target": "buzzard/rev1"
+ },
+ "cannonkeys/db60": {
+ "target": "cannonkeys/db60/rev2"
+ },
+ "clickety_split/leeloo": {
+ "target": "clickety_split/leeloo/rev3"
+ },
+ "converter/palm_usb": {
+ "target": "converter/palm_usb/stowaway"
+ },
+ "crkbd": {
+ "target": "crkbd/rev1"
+ },
+ "dailycraft/bat43": {
+ "target": "dailycraft/bat43/rev2"
+ },
+ "dailycraft/claw44": {
+ "target": "dailycraft/claw44/rev1"
+ },
+ "dailycraft/sandbox": {
+ "target": "dailycraft/sandbox/rev2"
+ },
+ "dailycraft/wings42": {
+ "target": "dailycraft/wings42/rev2"
+ },
+ "delikeeb/vanana": {
+ "target": "delikeeb/vanana/rev2"
+ },
+ "delikeeb/waaffle/rev3": {
+ "target": "delikeeb/waaffle/rev3/pro_micro"
+ },
+ "deltasplit75": {
+ "target": "deltasplit75/v2"
+ },
+ "drhigsby/ogurec": {
+ "target": "drhigsby/ogurec/left_pm"
+ },
+ "duck/octagon": {
+ "target": "duck/octagon/v2"
+ },
+ "duck/orion": {
+ "target": "duck/orion/v3"
+ },
+ "ducky/one2mini": {
+ "target": "ducky/one2mini/1861st"
+ },
+ "ducky/one2sf": {
+ "target": "ducky/one2sf/1967st"
+ },
+ "dumbpad": {
+ "target": "dumbpad/v0x"
+ },
+ "durgod/galaxy": {
+ "target": "durgod/dgk6x/galaxy"
+ },
+ "durgod/venus": {
+ "target": "durgod/dgk6x/venus"
+ },
+ "dztech/tofu/ii": {
+ "target": "dztech/tofu/ii/v1"
+ },
+ "dztech/tofu/jr": {
+ "target": "dztech/tofu/jr/v1"
+ },
+ "eco": {
+ "target": "eco/rev2"
+ },
+ "ergoslab": {
+ "target": "ergoslab/rev1"
+ },
+ "ergotravel": {
+ "target": "ergotravel/rev1"
+ },
+ "evyd13/atom47": {
+ "target": "evyd13/atom47/rev4"
+ },
+ "fortitude60": {
+ "target": "fortitude60/rev1"
+ },
+ "fruitykeeb/fruitbar/r1": {
+ "target": "fruitykeeb/fruitbar/r1/promicro"
+ },
+ "ghs/jem": {
+ "target": "ghs/jem/soldered"
+ },
+ "hadron": {
+ "target": "hadron/ver2"
+ },
+ "handwired/bento": {
+ "target": "handwired/bento/rev1"
+ },
+ "handwired/dactyl_manuform/6x6": {
+ "target": "handwired/dactyl_manuform/6x6/promicro"
+ },
+ "handwired/meck_tkl": {
+ "target": "handwired/meck_tkl/blackpill_f401"
+ },
+ "handwired/ms_sculpt_mobile": {
+ "target": "handwired/ms_sculpt_mobile/teensy2pp"
+ },
+ "handwired/onekey": {
+ "target": "handwired/onekey/promicro"
+ },
+ "handwired/pill60": {
+ "target": "handwired/pill60/bluepill"
+ },
+ "handwired/postageboard": {
+ "target": "handwired/postageboard/mini"
+ },
+ "handwired/qc60": {
+ "target": "handwired/qc60/proto"
+ },
+ "handwired/sono1": {
+ "target": "handwired/sono1/t2pp"
+ },
+ "handwired/splittest": {
+ "target": "handwired/splittest/promicro"
+ },
+ "handwired/stef9998/split_5x7": {
+ "target": "handwired/stef9998/split_5x7/rev1"
+ },
+ "handwired/symmetric70_proto/promicro": {
+ "target": "handwired/symmetric70_proto/promicro/base"
+ },
+ "handwired/symmetric70_proto/proton_c": {
+ "target": "handwired/symmetric70_proto/proton_c/base"
+ },
+ "handwired/unk": {
+ "target": "handwired/unk/rev1"
+ },
+ "handwired/xealous": {
+ "target": "handwired/xealous/rev1"
+ },
+ "hillside/46": {
+ "target": "hillside/46/0_1"
+ },
+ "hhkb/ansi": {
+ "target": "hhkb/ansi/32u4"
+ },
+ "hillside/48": {
+ "target": "hillside/48/0_1"
+ },
+ "hillside/52": {
+ "target": "hillside/52/0_1"
+ },
+ "ibnuda/squiggle": {
+ "target": "ibnuda/squiggle/rev1"
+ },
+ "idobao/id80/v1": {
+ "target": "idobao/id80/v2/ansi"
+ },
+ "idobao/id80/v3": {
+ "target": "idobao/id80/v3/ansi"
+ },
+ "inett_studio/sq80": {
+ "target": "inett_studio/sq80/hotswap_layout_i"
+ },
+ "input_club/infinity60": {
+ "target": "input_club/infinity60/led"
+ },
+ "jacky_studio/bear_65": {
+ "target": "jacky_studio/bear_65/rev1"
+ },
+ "jacky_studio/piggy60/rev1": {
+ "target": "jacky_studio/piggy60/rev1/solder"
+ },
+ "jadookb/jkb65": {
+ "target": "jadookb/jkb65/r1"
+ },
+ "jian": {
+ "target": "jian/rev2"
+ },
+ "jiran": {
+ "target": "jiran/rev1"
+ },
+ "jorne": {
+ "target": "jorne/rev1"
+ },
+ "junco": {
+ "target": "junco/rev1"
+ },
+ "kakunpc/angel17": {
+ "target": "kakunpc/angel17/rev1"
+ },
+ "kakunpc/angel64": {
+ "target": "kakunpc/angel64/rev1"
+ },
+ "kakunpc/business_card": {
+ "target": "kakunpc/business_card/beta"
+ },
+ "kakunpc/suihankey": {
+ "target": "kakunpc/suihankey/rev1"
+ },
+ "kakunpc/suihankey/split": {
+ "target": "kakunpc/suihankey/split/rev1"
+ },
+ "kapcave/paladinpad": {
+ "target": "kapcave/paladinpad/rev2"
+ },
+ "kapl": {
+ "target": "kapl/rev1"
+ },
+ "kbdfans/d45": {
+ "target": "kbdfans/d45/v2"
+ },
+ "kbdfans/kbd75": {
+ "target": "kbdfans/kbd75/rev1"
+ },
+ "keebio/bdn9": {
+ "target": "keebio/bdn9/rev1"
+ },
+ "keebio/convolution": {
+ "target": "keebio/convolution/rev1"
+ },
+ "keebio/foldkb": {
+ "target": "keebio/foldkb/rev1"
+ },
+ "keebio/kbo5000": {
+ "target": "keebio/kbo5000/rev1"
+ },
+ "keebio/levinson": {
+ "target": "keebio/levinson/rev2"
+ },
+ "keebio/quefrency": {
+ "target": "keebio/quefrency/rev1"
+ },
+ "keebio/rorschach": {
+ "target": "keebio/rorschach/rev1"
+ },
+ "keebio/sinc": {
+ "target": "keebio/sinc/rev1"
+ },
+ "keebio/viterbi": {
+ "target": "keebio/viterbi/rev2"
+ },
+ "keycapsss/kimiko": {
+ "target": "keycapsss/kimiko/rev2"
+ },
+ "keyhive/navi10": {
+ "target": "keyhive/navi10/rev3"
+ },
+ "keyhive/uno": {
+ "target": "keyhive/uno/rev1"
+ },
+ "kin80": {
+ "target": "kin80/blackpill401"
+ },
+ "kumaokobo/kudox_full": {
+ "target": "kumaokobo/kudox_full/rev1"
+ },
+ "kumaokobo/kudox_game": {
+ "target": "kumaokobo/kudox_game/rev2"
+ },
+ "kumaokobo/kudox": {
+ "target": "kumaokobo/kudox/rev3"
+ },
+ "kumaokobo/pico": {
+ "target": "kumaokobo/pico/65keys"
+ },
+ "lazydesigners/dimple": {
+ "target": "lazydesigners/dimple/staggered/rev1"
+ },
+ "lets_split": {
+ "target": "lets_split/rev2"
+ },
+ "lfkeyboards/lfk87": {
+ "target": "lfkeyboards/lfk78/revc"
+ },
+ "lily58": {
+ "target": "lily58/rev1"
+ },
+ "lime": {
+ "target": "lime/rev1"
+ },
+ "maple_computing/christmas_tree": {
+ "target": "maple_computing/christmas_tree/v2017"
+ },
+ "maple_computing/ivy": {
+ "target": "maple_computing/ivy/rev1"
+ },
+ "maple_computing/launchpad": {
+ "target": "maple_computing/launchpad/rev1"
+ },
+ "maple_computing/minidox": {
+ "target": "maple_computing/minidox/rev1"
+ },
+ "mariorion_v25": {
+ "target": "mariorion_v25/prod"
+ },
+ "marksard/rhymestone": {
+ "target": "marksard/rhymestone/rev1"
+ },
+ "marksard/treadstone32": {
+ "target": "marksard/treadstone32/rev1"
+ },
+ "marksard/treadstone48": {
+ "target": "marksard/treadstone48/rev1"
+ },
+ "maxipad": {
+ "target": "maxipad/promicro"
+ },
+ "mechkeys/mechmini": {
+ "target": "mechkeys/mechmini/v2"
+ },
+ "mechllama/g35": {
+ "target": "mechllama/g35/v2"
+ },
+ "mechlovin/adelais": {
+ "target": "mechlovin/adelais/standard_led/arm/rev2"
+ },
+ "mechlovin/adelais/standard_led/arm/rev4": {
+ "target": "mechlovin/adelais/standard_led/arm/rev4/stm32f303"
+ },
+ "mechlovin/adelais/standard_led/arm": {
+ "target": "mechlovin/adelais/standard_led/arm/rev2"
+ },
+ "mechlovin/adelais/standard_led/avr": {
+ "target": "mechlovin/adelais/standard_led/avr/rev1"
+ },
+ "mechlovin/hannah65/rev1": {
+ "target": "mechlovin/hannah65/rev1/haus"
+ },
+ "mechlovin/infinity87/rev1": {
+ "target": "mechlovin/infinity87/rev1/standard"
+ },
+ "mechlovin/infinity87": {
+ "target": "mechlovin/infinity87/rgb_rev1"
+ },
+ "mechlovin/mechlovin9": {
+ "target": "mechlovin/mechlovin9/rev1"
+ },
+ "mechlovin/olly/jf": {
+ "target": "mechlovin/olly/jf/rev1"
+ },
+ "mechlovin/zed1800": {
+ "target": "mechlovin/zed1800/saber"
+ },
+ "mechlovin/zed65/no_backlight": {
+ "target": "mechlovin/zed65/no_backlight/wearhaus66"
+ },
+ "mechlovin/zed65": {
+ "target": "mechlovin/zed65/no_backlight/wearhaus66"
+ },
+ "mechwild/bde": {
+ "target": "mechwild/bde/rev2"
+ },
+ "mechwild/mokulua": {
+ "target": "mechwild/mokulua/standard"
+ },
+ "mechwild/obe/f401": {
+ "target": "mechwild/obe/f401/base"
+ },
+ "mechwild/obe/f411": {
+ "target": "mechwild/obe/f411/base"
+ },
+ "mechwild/obe": {
+ "target": "mechwild/obe/f401/base"
+ },
+ "mechwild/waka60/f401": {
+ "target": "mechwild/waka60/f401/base"
+ },
+ "mechwild/waka60/f411": {
+ "target": "mechwild/waka60/f411/base"
+ },
+ "mechwild/waka60": {
+ "target": "mechwild/waka60/f401/base"
+ },
+ "murcielago": {
+ "target": "murcielago/rev1"
+ },
+ "nullbitsco/scramble": {
+ "target": "nullbitsco/scramble/v2"
+ },
+ "omkbd/ergodash": {
+ "target": "omkbd/ergodash/rev1"
+ },
+ "omkbd/runner3680": {
+ "target": "omkbd/runner3680/5x8"
+ },
+ "orthodox": {
+ "target": "orthodox/rev3"
+ },
+ "peej/rosaline": {
+ "target": "peej/rosaline/staggered"
+ },
+ "peej/tripel": {
+ "target": "peej/tripel/left"
+ },
+ "peranekofactory/tone": {
+ "target": "peranekofactory/tone/rev2"
+ },
+ "phase_studio/titan65": {
+ "target": "phase_studio/titan65/hotswap"
+ },
+ "pica40": {
+ "target": "pica40/rev2"
+ },
+ "pinky": {
+ "target": "pinky/3"
+ },
+ "primekb/meridian": {
+ "target": "primekb/meridian/ktr1010"
+ },
+ "primekb/prime_e": {
+ "target": "primekb/prime_e/std"
+ },
+ "program_yoink": {
+ "target": "program_yoink/staggered"
+ },
+ "projectcain/vault35": {
+ "target": "projectcain/vault35/atmega32u4"
+ },
+ "qpockets/space_space": {
+ "target": "qpockets/space_space/rev2"
+ },
+ "qwertyydox": {
+ "target": "qwertyydox/rev1"
+ },
+ "rate/pistachio": {
+ "target": "rate/pistachio/rev2"
+ },
+ "recompile_keys/choco60": {
+ "target": "recompile_keys/choco60/rev1"
+ },
+ "recompile_keys/nomu30": {
+ "target": "recompile_keys/nomu30/rev1"
+ },
+ "redox/rev1": {
+ "target": "redox/rev1/base"
+ },
+ "rgbkb/mun": {
+ "target": "rgbkb/mun/rev1"
+ },
+ "rgbkb/sol3": {
+ "target": "rgbkb/sol3/rev1"
+ },
+ "rgbkb/sol": {
+ "target": "rgbkb/sol/rev2"
+ },
+ "rgbkb/zen": {
+ "target": "rgbkb/zen/rev2"
+ },
+ "rgbkb/zygomorph": {
+ "target": "rgbkb/zygomorph/rev1"
+ },
+ "rmi_kb/herringbone": {
+ "target": "rmi_kb/herringbone/v1"
+ },
+ "rmi_kb/mona": {
+ "target": "rmi_kb/mona/v1_1"
+ },
+ "rmi_kb/tkl_ff": {
+ "target": "rmi_kb/tkl_ff/v1"
+ },
+ "rmi_kb/wete": {
+ "target": "rmi_kb/wete/v2"
+ },
+ "rookiebwoy/late9": {
+ "target": "rookiebwoy/late9/rev1"
+ },
+ "rookiebwoy/neopad": {
+ "target": "rookiebwoy/neopad/rev1"
+ },
+ "rura66": {
+ "target": "rura66/rev1"
+ },
+ "salicylic_acid3/7skb": {
+ "target": "salicylic_acid3/7skb/rev1"
+ },
+ "salicylic_acid3/getta25": {
+ "target": "salicylic_acid3/getta25/rev1"
+ },
+ "salicylic_acid3/jisplit89": {
+ "target": "salicylic_acid3/jisplit89/rev1"
+ },
+ "salicylic_acid3/naked48": {
+ "target": "salicylic_acid3/naked48/rev1"
+ },
+ "salicylic_acid3/naked60": {
+ "target": "salicylic_acid3/naked60/rev1"
+ },
+ "salicylic_acid3/naked64": {
+ "target": "salicylic_acid3/naked64/rev1"
+ },
+ "salicylic_acid3/setta21": {
+ "target": "salicylic_acid3/setta21/rev1"
+ },
+ "sawnsprojects/okayu": {
+ "target": "sawnsprojects/okayu/stm32f072"
+ },
+ "smoll/lefty": {
+ "target": "smoll/lefty/rev2"
+ },
+ "sofle": {
+ "target": "sofle/rev1"
+ },
+ "spaceholdings/nebula68b": {
+ "target": "spaceholdings/nebula68b/solder"
+ },
+ "spacetime": {
+ "target": "spacetime/rev1"
+ },
+ "splitkb/aurora/corne": {
+ "target": "splitkb/aurora/corne/rev1"
+ },
+ "splitkb/aurora/helix": {
+ "target": "splitkb/aurora/helix/rev1"
+ },
+ "splitkb/aurora/lily58": {
+ "target": "splitkb/aurora/lily58/rev1"
+ },
+ "splitkb/aurora/sofle_v2": {
+ "target": "splitkb/aurora/sofle_v2/rev1"
+ },
+ "splitkb/aurora/sweep": {
+ "target": "splitkb/aurora/sweep/rev1"
+ },
+ "splitkb/kyria": {
+ "target": "splitkb/kyria/rev3"
+ },
+ "splitkb/kyria/rev1": {
+ "target": "splitkb/kyria/rev1/base"
+ },
+ "splitkb/kyria/rev2": {
+ "target": "splitkb/kyria/rev2/base"
+ },
+ "splitty": {
+ "target": "splitty/rev1"
+ },
+ "studiokestra/galatea": {
+ "target": "studiokestra/galatea/rev1"
+ },
+ "takashiski/hecomi": {
+ "target": "takashiski/hecomi/alpha"
+ },
+ "takashiski/namecard2x4": {
+ "target": "takashiski/namecard2x4/rev2"
+ },
+ "teleport/native": {
+ "target": "teleport/native/iso"
+ },
+ "themadnoodle/noodlepad": {
+ "target": "themadnoodle/noodlepad/v1"
+ },
+ "tkw/grandiceps": {
+ "target": "tkw/grandiceps/rev1"
+ },
+ "tominabox1/le_chiffre": {
+ "target": "tominabox1/le_chiffre/rev1"
+ },
+ "tominabox1/littlefoot_lx": {
+ "target": "tominabox1/littlefoot_lx/rev1"
+ },
+ "tominabox1/underscore33": {
+ "target": "tominabox1/underscore33/rev1"
+ },
+ "trnthsn/e8ghty": {
+ "target": "trnthsn/e8ghty/stm32f103"
+ },
+ "trnthsn/s6xty5neor2": {
+ "target": "trnthsn/s6xty5neor2/stm32f103"
+ },
+ "tweetydabird/lotus58": {
+ "target": "tweetydabird/lotus58/promicro"
+ },
+ "unison": {
+ "target": "unison/v04"
+ },
+ "uzu42": {
+ "target": "uzu42/rev1"
+ },
+ "vitamins_included": {
+ "target": "vitamins_included/rev2"
+ },
+ "westm/westm68": {
+ "target": "westm/westm68/rev2"
+ },
+ "westm/westm9": {
+ "target": "westm/westm9/rev2"
+ },
+ "woodkeys/meira": {
+ "target": "woodkeys/meira/promicro"
+ },
+ "work_louder/loop": {
+ "target": "work_louder/loop/rev3"
+ },
+ "work_louder/work_board": {
+ "target": "work_louder/work_board/rev3"
+ },
+ "yanghu/unicorne": {
+ "target": "yanghu/unicorne/f411"
+ },
+ "yosino58": {
+ "target": "yosino58/rev1"
+ },
+ "ymdk/yd60mq": {
+ "target": "ymdk/yd60mq/12led"
+ },
+ "yushakobo/navpad/10": {
+ "target": "yushakobo/navpad/10/rev1"
+ },
+ "yynmt/acperience12": {
+ "target": "yynmt/acperience12/rev1"
+ },
+ "zsa/planck_ez": {
+ "target": "zsa/planck_ez/base"
}
}
diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema
index ec87680fa0..8b6cc7032b 100644
--- a/data/schemas/keyboard.jsonschema
+++ b/data/schemas/keyboard.jsonschema
@@ -422,7 +422,11 @@
"h": {"$ref": "qmk.definitions.v1#/key_unit"},
"w": {"$ref": "qmk.definitions.v1#/key_unit"},
"x": {"$ref": "qmk.definitions.v1#/key_unit"},
- "y": {"$ref": "qmk.definitions.v1#/key_unit"}
+ "y": {"$ref": "qmk.definitions.v1#/key_unit"},
+ "hand": {
+ "type": "string",
+ "enum": ["L", "R", "*"]
+ }
}
}
}
@@ -915,6 +919,7 @@
"tapping": {
"type": "object",
"properties": {
+ "chordal_hold": {"type": "boolean"},
"force_hold": {"type": "boolean"},
"force_hold_per_key": {"type": "boolean"},
"ignore_mod_tap_interrupt": {"type": "boolean"},