diff options
Diffstat (limited to 'data')
-rw-r--r-- | data/constants/keycodes/extras/keycodes_russian_typewriter_0.0.1.hjson | 291 | ||||
-rw-r--r-- | data/mappings/info_config.hjson | 50 | ||||
-rw-r--r-- | data/mappings/info_rules.hjson | 2 | ||||
-rw-r--r-- | data/mappings/keyboard_aliases.hjson | 34 | ||||
-rw-r--r-- | data/schemas/keyboard.jsonschema | 169 |
5 files changed, 531 insertions, 15 deletions
diff --git a/data/constants/keycodes/extras/keycodes_russian_typewriter_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_russian_typewriter_0.0.1.hjson new file mode 100644 index 0000000000..6ad03c58e5 --- /dev/null +++ b/data/constants/keycodes/extras/keycodes_russian_typewriter_0.0.1.hjson @@ -0,0 +1,291 @@ +{ + "aliases": { +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ | │ № │ - │ / │ " │ : │ , │ . │ _ │ ? │ % │ ! │ ; │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │ Й │ Ц │ У │ К │ Е │ Н │ Г │ Ш │ Щ │ З │ Х │ Ъ │ ) │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + * │ │ Ф │ Ы │ В │ А │ П │ Р │ О │ Л │ Д │ Ж │ Э │ │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ + * │ │ Я │ Ч │ С │ М │ И │ Т │ Ь │ Б │ Ю │ Ё │ │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │ │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ + "KC_GRV": { + "key": "RU_PIPE", + "label": "|", + } + "KC_1": { + "key": "RU_NUM", + "label": "№", + } + "KC_2": { + "key": "RU_MINS", + "label": "-", + } + "KC_3": { + "key": "RU_SLSH", + "label": "/", + } + "KC_4": { + "key": "RU_DQUO", + "label": "\"", + } + "KC_5": { + "key": "RU_COLN", + "label": ":", + } + "KC_6": { + "key": "RU_COMM", + "label": ",", + } + "KC_7": { + "key": "RU_DOT", + "label": ".", + } + "KC_8": { + "key": "RU_UNDS", + "label": "_", + } + "KC_9": { + "key": "RU_QUES", + "label": "?", + } + "KC_0": { + "key": "RU_PERC", + "label": "%", + } + "KC_MINS": { + "key": "RU_EXLM", + "label": "!", + } + "KC_EQL": { + "key": "RU_SCLN", + "label": ";", + } + "KC_Q": { + "key": "RU_SHTI", + "label": "Й", + } + "KC_W": { + "key": "RU_TSE", + "label": "Ц", + } + "KC_E": { + "key": "RU_U", + "label": "У", + } + "KC_R": { + "key": "RU_KA", + "label": "К", + } + "KC_T": { + "key": "RU_IE", + "label": "Е", + } + "KC_Y": { + "key": "RU_EN", + "label": "Н", + } + "KC_U": { + "key": "RU_GHE", + "label": "Г", + } + "KC_I": { + "key": "RU_SHA", + "label": "Ш", + } + "KC_O": { + "key": "RU_SHCH", + "label": "Щ", + } + "KC_P": { + "key": "RU_ZE", + "label": "З", + } + "KC_LBRC": { + "key": "RU_HA", + "label": "Х", + } + "KC_RBRC": { + "key": "RU_HARD", + "label": "Ъ", + } + "KC_BSLS": { + "key": "RU_RPRN", + "label": ")", + } + "KC_A": { + "key": "RU_EF", + "label": "Ф", + } + "KC_S": { + "key": "RU_YERU", + "label": "Ы", + } + "KC_D": { + "key": "RU_VE", + "label": "В", + } + "KC_F": { + "key": "RU_A", + "label": "А", + } + "KC_G": { + "key": "RU_PE", + "label": "П", + } + "KC_H": { + "key": "RU_ER", + "label": "Р", + } + "KC_J": { + "key": "RU_O", + "label": "О", + } + "KC_K": { + "key": "RU_EL", + "label": "Л", + } + "KC_L": { + "key": "RU_DE", + "label": "Д", + } + "KC_SCLN": { + "key": "RU_ZHE", + "label": "Ж", + } + "KC_QUOT": { + "key": "RU_E", + "label": "Э", + } + "KC_Z": { + "key": "RU_YA", + "label": "Я", + } + "KC_X": { + "key": "RU_CHE", + "label": "Ч", + } + "KC_C": { + "key": "RU_ES", + "label": "С", + } + "KC_V": { + "key": "RU_EM", + "label": "М", + } + "KC_B": { + "key": "RU_I", + "label": "И", + } + "KC_N": { + "key": "RU_TE", + "label": "Т", + } + "KC_M": { + "key": "RU_SOFT", + "label": "Ь", + } + "KC_COMM": { + "key": "RU_BE", + "label": "Б", + } + "KC_DOT": { + "key": "RU_YU", + "label": "Ю", + } + "KC_SLSH": { + "key": "RU_YO", + "label": "Ё", + } +/* Shifted symbols + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ + │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ = │ \ │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ ( │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ + * │ │ │ │ │ │ │ │ │ │ │ │ │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │ │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ + "S(RU_PIPE)": { + "key": "RU_PLUS", + "label": "+", + } + "S(RU_NUM)": { + "key": "RU_1", + "label": "1", + } + "S(RU_MINS)": { + "key": "RU_2", + "label": "2", + } + "S(RU_SLSH)": { + "key": "RU_3", + "label": "3", + } + "S(RU_DQUO)": { + "key": "RU_4", + "label": "4", + } + "S(RU_COLN)": { + "key": "RU_5", + "label": "5", + } + "S(RU_COMM)": { + "key": "RU_6", + "label": "6", + } + "S(RU_DOT)": { + "key": "RU_7", + "label": "7", + } + "S(RU_UNDS)": { + "key": "RU_8", + "label": "8", + } + "S(RU_QUES)": { + "key": "RU_9", + "label": "9", + } + "S(RU_PERC)": { + "key": "RU_0", + "label": "0", + } + "S(RU_EXLM)": { + "key": "RU_EQL", + "label": "=", + } + "S(RU_SCLN)": { + "key": "RU_BSLS", + "label": "\\", + } + "S(RU_RPRN)": { + "key": "RU_LPRN", + "label": "(", + } +/* AltGr symbols + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ │ │ │ │ │ │ │ │ ₽ │ │ │ │ │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ + * │ │ │ │ │ │ │ │ │ │ │ │ │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │ │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ + "ALGR(RU_UNDS)": { + "key": "RU_RUBL", + "label": "₽", + } + } +} diff --git a/data/mappings/info_config.hjson b/data/mappings/info_config.hjson index 76ad55f7da..26b437b513 100644 --- a/data/mappings/info_config.hjson +++ b/data/mappings/info_config.hjson @@ -29,6 +29,9 @@ "BACKLIGHT_PIN": {"info_key": "backlight.pin"}, "BACKLIGHT_PINS": {"info_key": "backlight.pins", "value_type": "array"}, "BREATHING_PERIOD": {"info_key": "backlight.breathing_period", "value_type": "int"}, + "BACKLIGHT_DEFAULT_ON": {"info_key": "backlight.default.on", "value_type": "bool"}, + "BACKLIGHT_DEFAULT_BREATHING": {"info_key": "backlight.default.breathing", "value_type": "bool"}, + "BACKLIGHT_DEFAULT_LEVEL": {"info_key": "backlight.default.brightness", "value_type": "int"}, // Bootmagic "BOOTMAGIC_LITE_COLUMN": {"info_key": "bootmagic.matrix.1", "value_type": "int"}, @@ -45,10 +48,18 @@ // Combos "COMBO_TERM": {"info_key": "combo.term", "value_type": "int"}, + "DIP_SWITCH_MATRIX_GRID": {"info_key": "dip_switch.matrix_grid", "value_type": "array.array.int", "to_json": false}, + "DIP_SWITCH_PINS": {"info_key": "dip_switch.pins", "value_type": "array"}, + "DIP_SWITCH_PINS_RIGHT": {"info_key": "split.dip_switch.right.pins", "value_type": "array"}, + // Dynamic Keymap "DYNAMIC_KEYMAP_EEPROM_MAX_ADDR": {"info_key": "dynamic_keymap.eeprom_max_addr", "value_type": "int"}, "DYNAMIC_KEYMAP_LAYER_COUNT": {"info_key": "dynamic_keymap.layer_count", "value_type": "int"}, + // EEPROM + "WEAR_LEVELING_BACKING_SIZE": {"info_key": "eeprom.wear_leveling.backing_size", "value_type": "int", "to_json": false}, + "WEAR_LEVELING_LOGICAL_SIZE": {"info_key": "eeprom.wear_leveling.logical_size", "value_type": "int", "to_json": false}, + // Indicators "LED_CAPS_LOCK_PIN": {"info_key": "indicators.caps_lock"}, "LED_NUM_LOCK_PIN": {"info_key": "indicators.num_lock"}, @@ -63,13 +74,24 @@ "LEADER_TIMEOUT": {"info_key": "leader_key.timeout", "value_type": "int"}, // LED Matrix + "LED_DISABLE_WHEN_USB_SUSPENDED": {"info_key": "led_matrix.sleep", "value_type": "bool"}, "LED_MATRIX_CENTER": {"info_key": "led_matrix.center_point", "value_type": "array.int"}, + "LED_MATRIX_KEYRELEASES": {"info_key": "led_matrix.react_on_keyup", "value_type": "bool"}, + "LED_MATRIX_LED_FLUSH_LIMIT": {"info_key": "led_matrix.led_flush_limit", "value_type": "int"}, + "LED_MATRIX_LED_PROCESS_LIMIT": {"info_key": "led_matrix.led_process_limit", "value_type": "int", "to_json": false}, "LED_MATRIX_MAXIMUM_BRIGHTNESS": {"info_key": "led_matrix.max_brightness", "value_type": "int"}, "LED_MATRIX_SPD_STEP": {"info_key": "led_matrix.speed_steps", "value_type": "int"}, "LED_MATRIX_SPLIT": {"info_key": "led_matrix.split_count", "value_type": "array.int"}, "LED_MATRIX_TIMEOUT": {"info_key": "led_matrix.timeout", "value_type": "int"}, "LED_MATRIX_VAL_STEP": {"info_key": "led_matrix.val_steps", "value_type": "int"}, "LED_MATRIX_LED_COUNT": {"info_key": "led_matrix.led_count", "value_type": "int", "to_json": false}, + "LED_MATRIX_DEFAULT_ON": {"info_key": "led_matrix.default.on", "value_type": "bool"}, + "LED_MATRIX_DEFAULT_VAL": {"info_key": "led_matrix.default.val", "value_type": "int"}, + "LED_MATRIX_DEFAULT_SPD": {"info_key": "led_matrix.default.speed", "value_type": "int"}, + + // Locking Switch + "LOCKING_SUPPORT_ENABLE": {"info_key": "qmk.locking.enabled", "value_type": "bool"}, + "LOCKING_RESYNC_ENABLE": {"info_key": "qmk.locking.resync", "value_type": "bool"}, // LUFA Bootloader "QMK_ESC_INPUT": {"info_key": "qmk_lufa_bootloader.esc_input"}, @@ -100,8 +122,12 @@ "PS2_DATA_PIN": {"info_key": "ps2.data_pin"}, // RGB Matrix + "RGB_DISABLE_WHEN_USB_SUSPENDED": {"info_key": "rgb_matrix.sleep", "value_type": "bool"}, "RGB_MATRIX_CENTER": {"info_key": "rgb_matrix.center_point", "value_type": "array.int"}, "RGB_MATRIX_HUE_STEP": {"info_key": "rgb_matrix.hue_steps", "value_type": "int"}, + "RGB_MATRIX_KEYRELEASES": {"info_key": "rgb_matrix.react_on_keyup", "value_type": "bool"}, + "RGB_MATRIX_LED_FLUSH_LIMIT": {"info_key": "rgb_matrix.led_flush_limit", "value_type": "int"}, + "RGB_MATRIX_LED_PROCESS_LIMIT": {"info_key": "rgb_matrix.led_process_limit", "value_type": "int", "to_json": false}, "RGB_MATRIX_MAXIMUM_BRIGHTNESS": {"info_key": "rgb_matrix.max_brightness", "value_type": "int"}, "RGB_MATRIX_SAT_STEP": {"info_key": "rgb_matrix.sat_steps", "value_type": "int"}, "RGB_MATRIX_SPD_STEP": {"info_key": "rgb_matrix.speed_steps", "value_type": "int"}, @@ -109,6 +135,11 @@ "RGB_MATRIX_TIMEOUT": {"info_key": "rgb_matrix.timeout", "value_type": "int"}, "RGB_MATRIX_VAL_STEP": {"info_key": "rgb_matrix.val_steps", "value_type": "int"}, "RGB_MATRIX_LED_COUNT": {"info_key": "rgb_matrix.led_count", "value_type": "int", "to_json": false}, + "RGB_MATRIX_DEFAULT_ON": {"info_key": "rgb_matrix.default.on", "value_type": "bool"}, + "RGB_MATRIX_DEFAULT_HUE": {"info_key": "rgb_matrix.default.hue", "value_type": "int"}, + "RGB_MATRIX_DEFAULT_SAT": {"info_key": "rgb_matrix.default.sat", "value_type": "int"}, + "RGB_MATRIX_DEFAULT_VAL": {"info_key": "rgb_matrix.default.val", "value_type": "int"}, + "RGB_MATRIX_DEFAULT_SPD": {"info_key": "rgb_matrix.default.speed", "value_type": "int"}, // RGBLight "RGBLED_NUM": {"info_key": "rgblight.led_count", "value_type": "int"}, @@ -124,6 +155,11 @@ "RGBLIGHT_SLEEP": {"info_key": "rgblight.sleep", "value_type": "bool"}, "RGBLIGHT_SPLIT": {"info_key": "rgblight.split", "value_type": "bool"}, "RGBLIGHT_VAL_STEP": {"info_key": "rgblight.brightness_steps", "value_type": "int"}, + "RGBLIGHT_DEFAULT_ON": {"info_key": "rgblight.default.on", "value_type": "bool"}, + "RGBLIGHT_DEFAULT_HUE": {"info_key": "rgblight.default.hue", "value_type": "int"}, + "RGBLIGHT_DEFAULT_SAT": {"info_key": "rgblight.default.sat", "value_type": "int"}, + "RGBLIGHT_DEFAULT_VAL": {"info_key": "rgblight.default.val", "value_type": "int"}, + "RGBLIGHT_DEFAULT_SPD": {"info_key": "rgblight.default.speed", "value_type": "int"}, "RGBW": {"info_key": "rgblight.rgbw", "value_type": "bool"}, // Secure @@ -134,13 +170,23 @@ // Split Keyboard "SOFT_SERIAL_PIN": {"info_key": "split.soft_serial_pin"}, "SOFT_SERIAL_SPEED": {"info_key": "split.soft_serial_speed"}, - "SPLIT_MODS_ENABLE": {"info_key": "split.transport.sync_modifiers", "value_type": "bool"}, - "SPLIT_TRANSPORT_MIRROR": {"info_key": "split.transport.sync_matrix_state", "value_type": "bool"}, + "SPLIT_HAND_MATRIX_GRID": {"info_key": "split.handedness.matrix_grid", "value_type": "array", "to_c": false}, + "SPLIT_HAND_PIN": {"info_key": "split.handedness.pin"}, "SPLIT_USB_DETECT": {"info_key": "split.usb_detect.enabled", "value_type": "bool"}, "SPLIT_USB_TIMEOUT": {"info_key": "split.usb_detect.timeout", "value_type": "int"}, "SPLIT_USB_TIMEOUT_POLL": {"info_key": "split.usb_detect.polling_interval", "value_type": "int"}, "SPLIT_WATCHDOG_ENABLE": {"info_key": "split.transport.watchdog", "value_type": "bool"}, "SPLIT_WATCHDOG_TIMEOUT": {"info_key": "split.transport.watchdog_timeout", "value_type": "int"}, + "SPLIT_ACTIVITY_ENABLE": {"info_key": "split.transport.sync.activity", "value_type": "bool"}, + "SPLIT_DETECTED_OS_ENABLE": {"info_key": "split.transport.sync.detected_os", "value_type": "bool"}, + "SPLIT_HAPTIC_ENABLE": {"info_key": "split.transport.sync.haptic", "value_type": "bool"}, + "SPLIT_LAYER_STATE_ENABLE": {"info_key": "split.transport.sync.layer_state", "value_type": "bool"}, + "SPLIT_LED_STATE_ENABLE": {"info_key": "split.transport.sync.indicators", "value_type": "bool"}, + "SPLIT_TRANSPORT_MIRROR": {"info_key": "split.transport.sync.matrix_state", "value_type": "bool"}, + "SPLIT_MODS_ENABLE": {"info_key": "split.transport.sync.modifiers", "value_type": "bool"}, + "SPLIT_OLED_ENABLE": {"info_key": "split.transport.sync.oled", "value_type": "bool"}, + "SPLIT_ST7565_ENABLE": {"info_key": "split.transport.sync.st7565", "value_type": "bool"}, + "SPLIT_WPM_ENABLE": {"info_key": "split.transport.sync.wpm", "value_type": "bool"}, // Tapping "HOLD_ON_OTHER_KEY_PRESS": {"info_key": "tapping.hold_on_other_key_press", "value_type": "bool"}, diff --git a/data/mappings/info_rules.hjson b/data/mappings/info_rules.hjson index 07191551da..02fc2bee9d 100644 --- a/data/mappings/info_rules.hjson +++ b/data/mappings/info_rules.hjson @@ -17,6 +17,7 @@ "BOOTLOADER": {"info_key": "bootloader", "warn_duplicate": false}, "BOOTMAGIC_ENABLE": {"info_key": "bootmagic.enabled", "value_type": "bool"}, "CAPS_WORD_ENABLE": {"info_key": "caps_word.enabled", "value_type": "bool"}, + "DIP_SWITCH_ENABLE": {"info_key": "dip_switch.enabled", "value_type": "bool"}, "DEBOUNCE_TYPE": {"info_key": "build.debounce_type"}, "EEPROM_DRIVER": {"info_key": "eeprom.driver"}, "ENCODER_ENABLE": {"info_key": "encoder.enabled", "value_type": "bool"}, @@ -42,6 +43,7 @@ "STENO_ENABLE": {"info_key": "stenography.enabled", "value_type": "bool"}, "STENO_PROTOCOL": {"info_key": "stenography.protocol"}, "WAIT_FOR_USB": {"info_key": "usb.wait_for", "value_type": "bool"}, + "WEAR_LEVELING_DRIVER": {"info_key": "eeprom.wear_leveling.driver"}, "WS2812_DRIVER": {"info_key": "ws2812.driver"}, // Items we want flagged in lint diff --git a/data/mappings/keyboard_aliases.hjson b/data/mappings/keyboard_aliases.hjson index 8e4265dc01..debbf2c047 100644 --- a/data/mappings/keyboard_aliases.hjson +++ b/data/mappings/keyboard_aliases.hjson @@ -176,6 +176,9 @@ "dztech/volcano660": { "target": "ilumkb/volcano660" }, + "dztech/og60": { + "target": "dztech/tofu60" + }, "eek": { "target": "eek/silk_down" }, @@ -209,6 +212,9 @@ "handwired/dactyl_manuform/6x6_kinesis": { "target": "handwired/dactyl_kinesis" }, + "handwired/dactyl_manuform/dmote/62key": { + "target": "handwired/dmote" + }, "handwired/ferris": { "target": "ferris/0_1" }, @@ -401,6 +407,9 @@ "maartenwut/wonderland": { "target": "evyd13/wonderland" }, + "matchstickworks/southpad": { + "target": "matchstickworks/southpad/rev2/" + }, "matrix/m12og": { "target": "matrix/m12og/rev1" }, @@ -894,6 +903,18 @@ "kelowna/rgb64": { "target": "weirdo/kelowna/rgb64" }, + "keychron/q0": { + "target": "keychron/q0/base" + }, + "keychron/q1": { + "target": "keychron/q1v1/ansi" + } + "keychron/q4": { + "target": "keychron/q4/ansi/v1" + } + "kprepublic/bm40hsrgb": { + "target": "kprepublic/bm40hsrgb/rev1" + }, "kprepublic/bm65hsrgb_iso": { "target": "kprepublic/bm65hsrgb_iso/rev1" }, @@ -1194,6 +1215,12 @@ "setta21": { "target": "salicylic_acid3/setta21" }, + "soda/mango": { + "target": "magic_force/mf17" + }, + "soda/pocket": { + "target": "magic_force/mf34" + }, "space_space/rev1": { "target": "qpockets/space_space/rev1" }, @@ -1218,6 +1245,9 @@ "stella": { "target": "hnahkb/stella" }, + "studiokestra/line_tkl": { + "target": "studiokestra/line_friends_tkl" + }, "suihankey/alpha": { "target": "kakunpc/suihankey/alpha" }, @@ -1322,5 +1352,9 @@ }, "zinc/reva": { "target": "25keys/zinc/reva" + }, + // Moved during 2023 Q4 cycle + "ymdk/melody96": { + "target": "ymdk/melody96/soldered" } } diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index 4053387f3b..9fc455530c 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema @@ -20,7 +20,15 @@ } } } - } + }, + "dip_switch_config": { + "type": "object", + "properties": { + "pins": { + "$ref": "qmk.definitions.v1#/mcu_pin_array" + } + } + }, }, "type": "object", "not": { "required": [ "vendorId", "productId" ] }, // reject via keys... @@ -128,6 +136,15 @@ "type": "string", "enum": ["pwm", "software", "timer", "custom"] }, + "default": { + "type": "object", + "additionalProperties": false, + "properties": { + "on": {"type": "boolean"}, + "breathing": {"type": "boolean"}, + "brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"} + } + }, "breathing": {"type": "boolean"}, "breathing_period": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}, "levels": { @@ -245,9 +262,40 @@ "type": "array", "items": {"$ref": "qmk.definitions.v1#/filename"} }, + "dip_switch": { + "$ref": "#/definitions/dip_switch_config", + "properties": { + "enabled": {"type": "boolean"}, + "matrix_grid": { + "type": "array", + "minItems": 1, + "items": { + "type": "array", + "minItems": 2, + "maxItems": 2, + "items": { + "type": "integer", + "minimum": 0 + } + } + } + } + }, "eeprom": { "properties": { - "driver": {"type": "string"} + "driver": {"type": "string"}, + "wear_leveling": { + "type": "object", + "additionalProperties": false, + "properties": { + "driver": { + "type": "string", + "enum": ["custom", "embedded_flash", "legacy", "rp2040_flash", "spi_flash"] + }, + "backing_size": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "logical_size": {"$ref": "qmk.definitions.v1#/unsigned_int"} + } + } } }, "encoder": { @@ -379,6 +427,16 @@ "type": "boolean" } }, + "default": { + "type": "object", + "additionalProperties": false, + "properties": { + "on": {"type": "boolean"}, + "animation": {"type": "string"}, + "val": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}, + "speed": {"$ref": "qmk.definitions.v1#/unsigned_int_8"} + } + }, "driver": {"type": "string"}, "center_point": { "type": "array", @@ -390,6 +448,10 @@ "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}, "val_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"}, "speed_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "led_flush_limit": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "led_process_limit": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "react_on_keyup": {"type": "boolean"}, + "sleep": {"type": "boolean"}, "split_count": { "type": "array", "minItems": 2, @@ -429,6 +491,18 @@ "type": "boolean" } }, + "default": { + "type": "object", + "additionalProperties": false, + "properties": { + "on": {"type": "boolean"}, + "animation": {"type": "string"}, + "hue": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}, + "sat": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}, + "val": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}, + "speed": {"$ref": "qmk.definitions.v1#/unsigned_int_8"} + } + }, "driver": {"type": "string"}, "center_point": { "type": "array", @@ -442,6 +516,10 @@ "sat_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"}, "val_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"}, "speed_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "led_flush_limit": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "led_process_limit": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "react_on_keyup": {"type": "boolean"}, + "sleep": {"type": "boolean"}, "split_count": { "type": "array", "minItems": 2, @@ -483,6 +561,18 @@ } }, "brightness_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "default": { + "type": "object", + "additionalProperties": false, + "properties": { + "on": {"type": "boolean"}, + "animation": {"type": "string"}, + "hue": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}, + "sat": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}, + "val": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}, + "speed": {"$ref": "qmk.definitions.v1#/unsigned_int_8"} + } + }, "driver": { "type": "string", "enum": ["apa102", "custom", "ws2812"] @@ -593,10 +683,6 @@ } } }, - "matrix_grid": { - "type": "array", - "items": {"$ref": "qmk.definitions.v1#/mcu_pin"} - }, "matrix_pins": { "type": "object", "additionalProperties": false, @@ -616,6 +702,15 @@ } } }, + "dip_switch": { + "type": "object", + "additionalProperties": false, + "properties": { + "right": { + "$ref": "#/definitions/dip_switch_config" + } + } + }, "encoder": { "type": "object", "additionalProperties": false, @@ -625,9 +720,17 @@ } } }, - "main": { - "type": "string", - "enum": ["eeprom", "left", "matrix_grid", "pin", "right"] + "handedness": { + "type": "object", + "additionalProperties": false, + "properties": { + "pin": {"$ref": "qmk.definitions.v1#/mcu_pin"}, + "matrix_grid": { + "$ref": "qmk.definitions.v1#/mcu_pin_array", + "minItems": 2, + "maxItems": 2 + } + } }, "soft_serial_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"}, "soft_serial_speed": { @@ -643,10 +746,32 @@ "type": "string", "enum": ["custom", "i2c", "serial", "serial_usart"] }, - "sync_matrix_state": {"type": "boolean"}, - "sync_modifiers": {"type": "boolean"}, + "sync": { + "type": "object", + "additionalProperties": false, + "properties": { + "activity": {"type": "boolean"}, + "detected_os": {"type": "boolean"}, + "haptic": {"type": "boolean"}, + "layer_state": {"type": "boolean"}, + "indicators": {"type": "boolean"}, + "matrix_state": {"type": "boolean"}, + "modifiers": {"type": "boolean"}, + "oled": {"type": "boolean"}, + "st7565": {"type": "boolean"}, + "wpm": {"type": "boolean"} + } + } "watchdog": {"type": "boolean"}, - "watchdog_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"} + "watchdog_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "sync_matrix_state": { + "type": "boolean", + "$comment": "Deprecated: use sync.matrix_state instead" + }, + "sync_modifiers": { + "type": "boolean", + "$comment": "Deprecated: use sync.modifiers instead" + } } }, "usb_detect": { @@ -657,6 +782,16 @@ "polling_interval": {"$ref": "qmk.definitions.v1#/unsigned_int"}, "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"} } + }, + "main": { + "type": "string", + "enum": ["eeprom", "left", "matrix_grid", "pin", "right"], + "$comment": "Deprecated: use config.h options for now" + }, + "matrix_grid": { + "type": "array", + "items": {"$ref": "qmk.definitions.v1#/mcu_pin"}, + "$comment": "Deprecated: use split.handedness.matrix_grid instead" } } }, @@ -714,7 +849,15 @@ "properties": { "keys_per_scan": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}, "tap_keycode_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"}, - "tap_capslock_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"} + "tap_capslock_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "locking": { + "type": "object", + "additionalProperties": false, + "properties": { + "enabled": {"type": "boolean"}, + "resync": {"type": "boolean"} + } + } } }, "qmk_lufa_bootloader": { |