diff options
2948 files changed, 9711 insertions, 8793 deletions
diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index a5d185e1dd..3e32f4d994 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -38,4 +38,4 @@ body: - type: textarea attributes: label: Additional Context - description: Add any other relevant information about the problem here.
\ No newline at end of file + description: Add any other relevant information about the problem here. diff --git a/builddefs/build_full_test.mk b/builddefs/build_full_test.mk index 5cae327c6c..82bb9387a6 100644 --- a/builddefs/build_full_test.mk +++ b/builddefs/build_full_test.mk @@ -25,8 +25,6 @@ $(TEST_OUTPUT)_SRC := \ tests/test_common/test_driver.cpp \ tests/test_common/keyboard_report_util.cpp \ tests/test_common/mouse_report_util.cpp \ - tests/test_common/keycode_util.cpp \ - tests/test_common/keycode_table.cpp \ tests/test_common/test_fixture.cpp \ tests/test_common/test_keymap_key.cpp \ tests/test_common/test_logger.cpp \ diff --git a/builddefs/build_keyboard.mk b/builddefs/build_keyboard.mk index c5fc9cd25d..514191b17d 100644 --- a/builddefs/build_keyboard.mk +++ b/builddefs/build_keyboard.mk @@ -97,21 +97,12 @@ endif # Pull in rules.mk files from all our subfolders -ifneq ("$(wildcard $(KEYBOARD_PATH_5)/rules.mk)","") - include $(KEYBOARD_PATH_5)/rules.mk -endif -ifneq ("$(wildcard $(KEYBOARD_PATH_4)/rules.mk)","") - include $(KEYBOARD_PATH_4)/rules.mk -endif -ifneq ("$(wildcard $(KEYBOARD_PATH_3)/rules.mk)","") - include $(KEYBOARD_PATH_3)/rules.mk -endif -ifneq ("$(wildcard $(KEYBOARD_PATH_2)/rules.mk)","") - include $(KEYBOARD_PATH_2)/rules.mk -endif -ifneq ("$(wildcard $(KEYBOARD_PATH_1)/rules.mk)","") - include $(KEYBOARD_PATH_1)/rules.mk -endif +-include $(KEYBOARD_PATH_5)/rules.mk +-include $(KEYBOARD_PATH_4)/rules.mk +-include $(KEYBOARD_PATH_3)/rules.mk +-include $(KEYBOARD_PATH_2)/rules.mk +-include $(KEYBOARD_PATH_1)/rules.mk + # Create dependencies on DD keyboard config - structure validated elsewhere DD_CONFIG_FILES := ifneq ("$(wildcard $(KEYBOARD_PATH_1)/info.json)","") @@ -260,6 +251,9 @@ generated-files: $(INTERMEDIATE_OUTPUT)/src/config.h $(INTERMEDIATE_OUTPUT)/src/ endif # Community modules +COMMUNITY_RULES_MK = $(shell $(QMK_BIN) generate-community-modules-rules-mk -kb $(KEYBOARD) --quiet --escape --output $(INTERMEDIATE_OUTPUT)/src/community_rules.mk $(KEYMAP_JSON)) +include $(COMMUNITY_RULES_MK) + $(INTERMEDIATE_OUTPUT)/src/community_modules.h: $(KEYMAP_JSON) $(DD_CONFIG_FILES) @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) $(eval CMD=$(QMK_BIN) generate-community-modules-h -kb $(KEYBOARD) --quiet --output $(INTERMEDIATE_OUTPUT)/src/community_modules.h $(KEYMAP_JSON)) @@ -487,21 +481,11 @@ ifneq ("$(CONVERTER)","") endif # Pull in post_rules.mk files from all our subfolders -ifneq ("$(wildcard $(KEYBOARD_PATH_1)/post_rules.mk)","") - include $(KEYBOARD_PATH_1)/post_rules.mk -endif -ifneq ("$(wildcard $(KEYBOARD_PATH_2)/post_rules.mk)","") - include $(KEYBOARD_PATH_2)/post_rules.mk -endif -ifneq ("$(wildcard $(KEYBOARD_PATH_3)/post_rules.mk)","") - include $(KEYBOARD_PATH_3)/post_rules.mk -endif -ifneq ("$(wildcard $(KEYBOARD_PATH_4)/post_rules.mk)","") - include $(KEYBOARD_PATH_4)/post_rules.mk -endif -ifneq ("$(wildcard $(KEYBOARD_PATH_5)/post_rules.mk)","") - include $(KEYBOARD_PATH_5)/post_rules.mk -endif +-include $(KEYBOARD_PATH_1)/post_rules.mk +-include $(KEYBOARD_PATH_2)/post_rules.mk +-include $(KEYBOARD_PATH_3)/post_rules.mk +-include $(KEYBOARD_PATH_4)/post_rules.mk +-include $(KEYBOARD_PATH_5)/post_rules.mk define post_rules_mk_community_module_includer ifneq ("$(wildcard $(1)/post_rules.mk)","") diff --git a/builddefs/common_features.mk b/builddefs/common_features.mk index c88ce36011..0b9840a14e 100644 --- a/builddefs/common_features.mk +++ b/builddefs/common_features.mk @@ -30,6 +30,8 @@ QUANTUM_SRC += \ $(QUANTUM_DIR)/logging/sendchar.c \ $(QUANTUM_DIR)/process_keycode/process_default_layer.c \ +include $(QUANTUM_DIR)/nvm/rules.mk + VPATH += $(QUANTUM_DIR)/logging # Fall back to lib/printf if there is no platform provided print ifeq ("$(wildcard $(PLATFORM_PATH)/$(PLATFORM_KEY)/printf.mk)","") @@ -169,80 +171,82 @@ endif VALID_EEPROM_DRIVER_TYPES := vendor custom transient i2c spi wear_leveling legacy_stm32_flash EEPROM_DRIVER ?= vendor -ifeq ($(filter $(EEPROM_DRIVER),$(VALID_EEPROM_DRIVER_TYPES)),) +ifneq ($(strip $(EEPROM_DRIVER)),none) + ifeq ($(filter $(EEPROM_DRIVER),$(VALID_EEPROM_DRIVER_TYPES)),) $(call CATASTROPHIC_ERROR,Invalid EEPROM_DRIVER,EEPROM_DRIVER="$(EEPROM_DRIVER)" is not a valid EEPROM driver) -else - OPT_DEFS += -DEEPROM_ENABLE - COMMON_VPATH += $(PLATFORM_PATH)/$(PLATFORM_KEY)/$(DRIVER_DIR)/eeprom - COMMON_VPATH += $(DRIVER_PATH)/eeprom - COMMON_VPATH += $(PLATFORM_COMMON_DIR) - ifeq ($(strip $(EEPROM_DRIVER)), custom) - # Custom EEPROM implementation -- only needs to implement init/erase/read_block/write_block - OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_CUSTOM - SRC += eeprom_driver.c - else ifeq ($(strip $(EEPROM_DRIVER)), wear_leveling) - # Wear-leveling EEPROM implementation - OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_WEAR_LEVELING - SRC += eeprom_driver.c eeprom_wear_leveling.c - else ifeq ($(strip $(EEPROM_DRIVER)), i2c) - # External I2C EEPROM implementation - OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_I2C - I2C_DRIVER_REQUIRED = yes - SRC += eeprom_driver.c eeprom_i2c.c - else ifeq ($(strip $(EEPROM_DRIVER)), spi) - # External SPI EEPROM implementation - OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_SPI - SPI_DRIVER_REQUIRED = yes - SRC += eeprom_driver.c eeprom_spi.c - else ifeq ($(strip $(EEPROM_DRIVER)), legacy_stm32_flash) - # STM32 Emulated EEPROM, backed by MCU flash (soon to be deprecated) - OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_LEGACY_EMULATED_FLASH - COMMON_VPATH += $(PLATFORM_PATH)/$(PLATFORM_KEY)/$(DRIVER_DIR)/flash - COMMON_VPATH += $(DRIVER_PATH)/flash - SRC += eeprom_driver.c eeprom_legacy_emulated_flash.c legacy_flash_ops.c - else ifeq ($(strip $(EEPROM_DRIVER)), transient) - # Transient EEPROM implementation -- no data storage but provides runtime area for it - OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_TRANSIENT - SRC += eeprom_driver.c eeprom_transient.c - else ifeq ($(strip $(EEPROM_DRIVER)), vendor) - # Vendor-implemented EEPROM - OPT_DEFS += -DEEPROM_VENDOR - ifeq ($(PLATFORM),AVR) - # Automatically provided by avr-libc, nothing required - else ifeq ($(PLATFORM),CHIBIOS) - ifneq ($(filter %_STM32F072xB %_STM32F042x6, $(MCU_SERIES)_$(MCU_LDSCRIPT)),) - # STM32 Emulated EEPROM, backed by MCU flash (soon to be deprecated) - OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_LEGACY_EMULATED_FLASH - COMMON_VPATH += $(PLATFORM_PATH)/$(PLATFORM_KEY)/$(DRIVER_DIR)/flash - COMMON_VPATH += $(DRIVER_PATH)/flash - SRC += eeprom_driver.c eeprom_legacy_emulated_flash.c legacy_flash_ops.c - else ifneq ($(filter $(MCU_SERIES),STM32F1xx STM32F3xx STM32F4xx STM32L4xx STM32G4xx WB32F3G71xx WB32FQ95xx AT32F415 GD32VF103),) - # Wear-leveling EEPROM implementation, backed by MCU flash - OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_WEAR_LEVELING - SRC += eeprom_driver.c eeprom_wear_leveling.c - WEAR_LEVELING_DRIVER ?= embedded_flash - else ifneq ($(filter $(MCU_SERIES),STM32L0xx STM32L1xx),) - # True EEPROM on STM32L0xx, L1xx - OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_STM32_L0_L1 - SRC += eeprom_driver.c eeprom_stm32_L0_L1.c - else ifneq ($(filter $(MCU_SERIES),RP2040),) - # Wear-leveling EEPROM implementation, backed by RP2040 flash - OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_WEAR_LEVELING - SRC += eeprom_driver.c eeprom_wear_leveling.c - WEAR_LEVELING_DRIVER ?= rp2040_flash - else ifneq ($(filter $(MCU_SERIES),KL2x K20x),) - # Teensy EEPROM implementations - OPT_DEFS += -DEEPROM_KINETIS_FLEXRAM - SRC += eeprom_kinetis_flexram.c - else - # Fall back to transient, i.e. non-persistent - OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_TRANSIENT - SRC += eeprom_driver.c eeprom_transient.c + else + OPT_DEFS += -DEEPROM_ENABLE + COMMON_VPATH += $(PLATFORM_PATH)/$(PLATFORM_KEY)/$(DRIVER_DIR)/eeprom + COMMON_VPATH += $(DRIVER_PATH)/eeprom + COMMON_VPATH += $(PLATFORM_COMMON_DIR) + ifeq ($(strip $(EEPROM_DRIVER)), custom) + # Custom EEPROM implementation -- only needs to implement init/erase/read_block/write_block + OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_CUSTOM + SRC += eeprom_driver.c + else ifeq ($(strip $(EEPROM_DRIVER)), wear_leveling) + # Wear-leveling EEPROM implementation + OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_WEAR_LEVELING + SRC += eeprom_driver.c eeprom_wear_leveling.c + else ifeq ($(strip $(EEPROM_DRIVER)), i2c) + # External I2C EEPROM implementation + OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_I2C + I2C_DRIVER_REQUIRED = yes + SRC += eeprom_driver.c eeprom_i2c.c + else ifeq ($(strip $(EEPROM_DRIVER)), spi) + # External SPI EEPROM implementation + OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_SPI + SPI_DRIVER_REQUIRED = yes + SRC += eeprom_driver.c eeprom_spi.c + else ifeq ($(strip $(EEPROM_DRIVER)), legacy_stm32_flash) + # STM32 Emulated EEPROM, backed by MCU flash (soon to be deprecated) + OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_LEGACY_EMULATED_FLASH + COMMON_VPATH += $(PLATFORM_PATH)/$(PLATFORM_KEY)/$(DRIVER_DIR)/flash + COMMON_VPATH += $(DRIVER_PATH)/flash + SRC += eeprom_driver.c eeprom_legacy_emulated_flash.c legacy_flash_ops.c + else ifeq ($(strip $(EEPROM_DRIVER)), transient) + # Transient EEPROM implementation -- no data storage but provides runtime area for it + OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_TRANSIENT + SRC += eeprom_driver.c eeprom_transient.c + else ifeq ($(strip $(EEPROM_DRIVER)), vendor) + # Vendor-implemented EEPROM + OPT_DEFS += -DEEPROM_VENDOR + ifeq ($(PLATFORM),AVR) + # Automatically provided by avr-libc, nothing required + else ifeq ($(PLATFORM),CHIBIOS) + ifneq ($(filter %_STM32F072xB %_STM32F042x6, $(MCU_SERIES)_$(MCU_LDSCRIPT)),) + # STM32 Emulated EEPROM, backed by MCU flash (soon to be deprecated) + OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_LEGACY_EMULATED_FLASH + COMMON_VPATH += $(PLATFORM_PATH)/$(PLATFORM_KEY)/$(DRIVER_DIR)/flash + COMMON_VPATH += $(DRIVER_PATH)/flash + SRC += eeprom_driver.c eeprom_legacy_emulated_flash.c legacy_flash_ops.c + else ifneq ($(filter $(MCU_SERIES),STM32F1xx STM32F3xx STM32F4xx STM32L4xx STM32G4xx WB32F3G71xx WB32FQ95xx AT32F415 GD32VF103),) + # Wear-leveling EEPROM implementation, backed by MCU flash + OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_WEAR_LEVELING + SRC += eeprom_driver.c eeprom_wear_leveling.c + WEAR_LEVELING_DRIVER ?= embedded_flash + else ifneq ($(filter $(MCU_SERIES),STM32L0xx STM32L1xx),) + # True EEPROM on STM32L0xx, L1xx + OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_STM32_L0_L1 + SRC += eeprom_driver.c eeprom_stm32_L0_L1.c + else ifneq ($(filter $(MCU_SERIES),RP2040),) + # Wear-leveling EEPROM implementation, backed by RP2040 flash + OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_WEAR_LEVELING + SRC += eeprom_driver.c eeprom_wear_leveling.c + WEAR_LEVELING_DRIVER ?= rp2040_flash + else ifneq ($(filter $(MCU_SERIES),KL2x K20x),) + # Teensy EEPROM implementations + OPT_DEFS += -DEEPROM_KINETIS_FLEXRAM + SRC += eeprom_kinetis_flexram.c + else + # Fall back to transient, i.e. non-persistent + OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_TRANSIENT + SRC += eeprom_driver.c eeprom_transient.c + endif + else ifeq ($(PLATFORM),TEST) + # Test harness "EEPROM" + OPT_DEFS += -DEEPROM_TEST_HARNESS + SRC += eeprom.c endif - else ifeq ($(PLATFORM),TEST) - # Test harness "EEPROM" - OPT_DEFS += -DEEPROM_TEST_HARNESS - SRC += eeprom.c endif endif endif @@ -888,12 +892,11 @@ ifeq ($(strip $(BLUETOOTH_ENABLE)), yes) OPT_DEFS += -DBLUETOOTH_ENABLE OPT_DEFS += -DBLUETOOTH_$(strip $(shell echo $(BLUETOOTH_DRIVER) | tr '[:lower:]' '[:upper:]')) NO_USB_STARTUP_CHECK := yes + CONNECTION_ENABLE := yes COMMON_VPATH += $(DRIVER_PATH)/bluetooth - SRC += outputselect.c process_connection.c ifeq ($(strip $(BLUETOOTH_DRIVER)), bluefruit_le) SPI_DRIVER_REQUIRED = yes - ANALOG_DRIVER_REQUIRED = yes SRC += $(DRIVER_PATH)/bluetooth/bluetooth.c SRC += $(DRIVER_PATH)/bluetooth/bluefruit_le.cpp endif @@ -934,6 +937,28 @@ ifeq ($(strip $(DIP_SWITCH_ENABLE)), yes) endif endif +VALID_BATTERY_DRIVER_TYPES := adc custom vendor + +BATTERY_DRIVER ?= adc +ifeq ($(strip $(BATTERY_DRIVER_REQUIRED)), yes) + ifeq ($(filter $(BATTERY_DRIVER),$(VALID_BATTERY_DRIVER_TYPES)),) + $(call CATASTROPHIC_ERROR,Invalid BATTERY_DRIVER,BATTERY_DRIVER="$(BATTERY_DRIVER)" is not a valid battery driver) + endif + + OPT_DEFS += -DBATTERY_DRIVER + OPT_DEFS += -DBATTERY_$(strip $(shell echo $(BATTERY_DRIVER) | tr '[:lower:]' '[:upper:]')) + + COMMON_VPATH += $(DRIVER_PATH)/battery + + SRC += battery.c + SRC += battery_$(strip $(BATTERY_DRIVER)).c + + # add extra deps + ifeq ($(strip $(BATTERY_DRIVER)), adc) + ANALOG_DRIVER_REQUIRED = yes + endif +endif + VALID_WS2812_DRIVER_TYPES := bitbang custom i2c pwm spi vendor WS2812_DRIVER ?= bitbang diff --git a/builddefs/converters.mk b/builddefs/converters.mk index b1e5a1bed2..20ecea5cb9 100644 --- a/builddefs/converters.mk +++ b/builddefs/converters.mk @@ -1,10 +1,3 @@ -# Note for new boards -- CTPC and CONVERT_TO_PROTON_C are deprecated terms -# and should not be replicated for new boards. These will be removed from -# documentation as well as existing keymaps in due course. -ifneq ($(findstring yes, $(CTPC)$(CONVERT_TO_PROTON_C)),) -$(call CATASTROPHIC_ERROR,The `CONVERT_TO_PROTON_C` and `CTPC` options are now deprecated. `CONVERT_TO=proton_c` should be used instead.) -endif - ifneq (,$(filter $(MCU),atmega32u4)) # TODO: opt in rather than assume everything uses a pro micro PIN_COMPATIBLE ?= promicro diff --git a/builddefs/generic_features.mk b/builddefs/generic_features.mk index f14f440877..c826514431 100644 --- a/builddefs/generic_features.mk +++ b/builddefs/generic_features.mk @@ -25,6 +25,7 @@ GENERIC_FEATURES = \ CAPS_WORD \ COMBO \ COMMAND \ + CONNECTION \ CRC \ DEFERRED_EXEC \ DIGITIZER \ @@ -34,6 +35,7 @@ GENERIC_FEATURES = \ DYNAMIC_TAPPING_TERM \ GRAVE_ESC \ HAPTIC \ + KEYCODE_STRING \ KEY_LOCK \ KEY_OVERRIDE \ LAYER_LOCK \ @@ -60,6 +62,7 @@ define HANDLE_GENERIC_FEATURE SRC += $$(wildcard $$(QUANTUM_DIR)/process_keycode/process_$2.c) SRC += $$(wildcard $$(QUANTUM_DIR)/$2/$2.c) SRC += $$(wildcard $$(QUANTUM_DIR)/$2.c) + SRC += $$(wildcard $$(QUANTUM_DIR)/nvm/$$(NVM_DRIVER_LOWER)/nvm_$2.c) VPATH += $$(wildcard $$(QUANTUM_DIR)/$2/) OPT_DEFS += -D$1_ENABLE endef diff --git a/data/constants/keycodes/extras/keycodes_belgian_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_belgian_0.0.1.hjson index d2b8c1d7d9..11b68d16a0 100644 --- a/data/constants/keycodes/extras/keycodes_belgian_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_belgian_0.0.1.hjson @@ -372,4 +372,4 @@ "label": "~", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_bepo_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_bepo_0.0.1.hjson index 713f3f2829..7a9dea9d13 100644 --- a/data/constants/keycodes/extras/keycodes_bepo_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_bepo_0.0.1.hjson @@ -629,4 +629,4 @@ "label": "(narrow non-breaking space)", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_brazilian_abnt2_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_brazilian_abnt2_0.0.1.hjson index 17006a64df..e28970ed33 100644 --- a/data/constants/keycodes/extras/keycodes_brazilian_abnt2_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_brazilian_abnt2_0.0.1.hjson @@ -376,4 +376,4 @@ "label": "₢", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_canadian_multilingual_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_canadian_multilingual_0.0.1.hjson index bfe5d5b54c..a663088e22 100644 --- a/data/constants/keycodes/extras/keycodes_canadian_multilingual_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_canadian_multilingual_0.0.1.hjson @@ -638,4 +638,4 @@ "label": "÷", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_colemak_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_colemak_0.0.1.hjson index 1dc091584b..0bf0f3b221 100644 --- a/data/constants/keycodes/extras/keycodes_colemak_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_colemak_0.0.1.hjson @@ -299,4 +299,4 @@ "label": "?", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_croatian_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_croatian_0.0.1.hjson index 82632aa637..50464921fa 100644 --- a/data/constants/keycodes/extras/keycodes_croatian_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_croatian_0.0.1.hjson @@ -400,4 +400,4 @@ "label": "§", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_czech_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_czech_0.0.1.hjson index 9cfb88c489..8b1572bfcb 100644 --- a/data/constants/keycodes/extras/keycodes_czech_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_czech_0.0.1.hjson @@ -432,4 +432,4 @@ "label": "*", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_danish_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_danish_0.0.1.hjson index fffcd9f9ad..0e8f7a75c6 100644 --- a/data/constants/keycodes/extras/keycodes_danish_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_danish_0.0.1.hjson @@ -356,4 +356,4 @@ "label": "µ", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_dvorak_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_dvorak_0.0.1.hjson index 534f99c8e6..485d86aa21 100644 --- a/data/constants/keycodes/extras/keycodes_dvorak_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_dvorak_0.0.1.hjson @@ -299,4 +299,4 @@ "label": ":", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_dvorak_fr_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_dvorak_fr_0.0.1.hjson index 70c0b3c0aa..69ce14486e 100644 --- a/data/constants/keycodes/extras/keycodes_dvorak_fr_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_dvorak_fr_0.0.1.hjson @@ -314,4 +314,4 @@ "label": "@", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_dvorak_programmer_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_dvorak_programmer_0.0.1.hjson index 8a70dae7ef..6fa9868e4c 100644 --- a/data/constants/keycodes/extras/keycodes_dvorak_programmer_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_dvorak_programmer_0.0.1.hjson @@ -299,4 +299,4 @@ "label": "\"", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_estonian_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_estonian_0.0.1.hjson index bbf7512581..276d3fe664 100644 --- a/data/constants/keycodes/extras/keycodes_estonian_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_estonian_0.0.1.hjson @@ -364,4 +364,4 @@ "label": "ž", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_eurkey_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_eurkey_0.0.1.hjson index 9ff217cff2..9b4fa33053 100644 --- a/data/constants/keycodes/extras/keycodes_eurkey_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_eurkey_0.0.1.hjson @@ -593,4 +593,4 @@ "label": "…", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_finnish_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_finnish_0.0.1.hjson index b284192962..a4d3c99a6f 100644 --- a/data/constants/keycodes/extras/keycodes_finnish_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_finnish_0.0.1.hjson @@ -356,4 +356,4 @@ "label": "µ", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_french_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_french_0.0.1.hjson index 8ba7b35d2e..351dfe89d8 100644 --- a/data/constants/keycodes/extras/keycodes_french_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_french_0.0.1.hjson @@ -364,4 +364,4 @@ "label": "¤", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_french_afnor_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_french_afnor_0.0.1.hjson index 90981d085d..92646c4de8 100644 --- a/data/constants/keycodes/extras/keycodes_french_afnor_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_french_afnor_0.0.1.hjson @@ -620,4 +620,4 @@ "label": "≠", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_french_mac_iso_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_french_mac_iso_0.0.1.hjson index b698018d5b..bb924e9852 100644 --- a/data/constants/keycodes/extras/keycodes_french_mac_iso_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_french_mac_iso_0.0.1.hjson @@ -673,4 +673,4 @@ "label": "±", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_german_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_german_0.0.1.hjson index a1cfd44956..015438abb2 100644 --- a/data/constants/keycodes/extras/keycodes_german_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_german_0.0.1.hjson @@ -356,4 +356,4 @@ "label": "µ", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_german_mac_iso_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_german_mac_iso_0.0.1.hjson index 366ed5b9d1..fa3b8d67b5 100644 --- a/data/constants/keycodes/extras/keycodes_german_mac_iso_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_german_mac_iso_0.0.1.hjson @@ -653,4 +653,4 @@ "label": "—", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_greek_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_greek_0.0.1.hjson index 9c7f8796bf..b61a317b19 100644 --- a/data/constants/keycodes/extras/keycodes_greek_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_greek_0.0.1.hjson @@ -388,4 +388,4 @@ "label": "©", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_hebrew_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_hebrew_0.0.1.hjson index b519229f35..aaf0563623 100644 --- a/data/constants/keycodes/extras/keycodes_hebrew_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_hebrew_0.0.1.hjson @@ -344,4 +344,4 @@ "label": "÷", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_hungarian_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_hungarian_0.0.1.hjson index d4fc908dc0..e7ae0d340c 100644 --- a/data/constants/keycodes/extras/keycodes_hungarian_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_hungarian_0.0.1.hjson @@ -432,4 +432,4 @@ "label": "*", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_icelandic_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_icelandic_0.0.1.hjson index f4d6025a77..59478a1018 100644 --- a/data/constants/keycodes/extras/keycodes_icelandic_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_icelandic_0.0.1.hjson @@ -352,4 +352,4 @@ "label": "µ", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_irish_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_irish_0.0.1.hjson index 94e553469e..99487a5b90 100644 --- a/data/constants/keycodes/extras/keycodes_irish_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_irish_0.0.1.hjson @@ -352,4 +352,4 @@ "label": "´ (dead)", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_italian_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_italian_0.0.1.hjson index 951c564f62..8b859d6de8 100644 --- a/data/constants/keycodes/extras/keycodes_italian_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_italian_0.0.1.hjson @@ -361,4 +361,4 @@ "label": "}", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_italian_mac_ansi_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_italian_mac_ansi_0.0.1.hjson index 328755ca67..551f094974 100644 --- a/data/constants/keycodes/extras/keycodes_italian_mac_ansi_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_italian_mac_ansi_0.0.1.hjson @@ -681,4 +681,4 @@ "label": "—", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_italian_mac_iso_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_italian_mac_iso_0.0.1.hjson index 4beccd804a..aed90f203d 100644 --- a/data/constants/keycodes/extras/keycodes_italian_mac_iso_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_italian_mac_iso_0.0.1.hjson @@ -685,4 +685,4 @@ "label": "—", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_japanese_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_japanese_0.0.1.hjson index d95712abd9..779eef8a84 100644 --- a/data/constants/keycodes/extras/keycodes_japanese_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_japanese_0.0.1.hjson @@ -327,4 +327,4 @@ "label": "_", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_korean_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_korean_0.0.1.hjson index 5ee19c9e4e..8e04d8ed2a 100644 --- a/data/constants/keycodes/extras/keycodes_korean_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_korean_0.0.1.hjson @@ -307,4 +307,4 @@ "label": "?", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_latvian_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_latvian_0.0.1.hjson index ab80f0fdd9..510a2c83a7 100644 --- a/data/constants/keycodes/extras/keycodes_latvian_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_latvian_0.0.1.hjson @@ -437,4 +437,4 @@ "label": "¨ (dead)", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_lithuanian_azerty_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_lithuanian_azerty_0.0.1.hjson index dfb527878e..f6140d7f93 100644 --- a/data/constants/keycodes/extras/keycodes_lithuanian_azerty_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_lithuanian_azerty_0.0.1.hjson @@ -372,4 +372,4 @@ "label": "\\", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_lithuanian_qwerty_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_lithuanian_qwerty_0.0.1.hjson index a4ea30d592..2ab6f83c94 100644 --- a/data/constants/keycodes/extras/keycodes_lithuanian_qwerty_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_lithuanian_qwerty_0.0.1.hjson @@ -365,4 +365,4 @@ "label": "+", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_neo2_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_neo2_0.0.1.hjson index 980bddbf7a..88ede311a6 100644 --- a/data/constants/keycodes/extras/keycodes_neo2_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_neo2_0.0.1.hjson @@ -214,4 +214,4 @@ "label": "(layer 4)", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_nordic_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_nordic_0.0.1.hjson index fb3d1bc84b..8536a004de 100644 --- a/data/constants/keycodes/extras/keycodes_nordic_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_nordic_0.0.1.hjson @@ -113,4 +113,4 @@ "key": "NO_MU" } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_norman_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_norman_0.0.1.hjson index 98ea7e6aab..45cd26ae1c 100644 --- a/data/constants/keycodes/extras/keycodes_norman_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_norman_0.0.1.hjson @@ -299,4 +299,4 @@ "label": "?", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_norwegian_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_norwegian_0.0.1.hjson index 4e8cbb5d0e..0cc79c5631 100644 --- a/data/constants/keycodes/extras/keycodes_norwegian_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_norwegian_0.0.1.hjson @@ -352,4 +352,4 @@ "label": "µ", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_plover_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_plover_0.0.1.hjson index fb00ef0c62..78cfe9dd41 100644 --- a/data/constants/keycodes/extras/keycodes_plover_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_plover_0.0.1.hjson @@ -83,4 +83,4 @@ "key": "PV_U" } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_plover_dvorak_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_plover_dvorak_0.0.1.hjson index 9656dd9821..8e1fe29f8b 100644 --- a/data/constants/keycodes/extras/keycodes_plover_dvorak_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_plover_dvorak_0.0.1.hjson @@ -70,4 +70,4 @@ "key": "PD_U" } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_polish_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_polish_0.0.1.hjson index 609011b1f7..f09f2c9b64 100644 --- a/data/constants/keycodes/extras/keycodes_polish_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_polish_0.0.1.hjson @@ -352,4 +352,4 @@ "label": "Ń", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_portuguese_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_portuguese_0.0.1.hjson index c8e43065d2..ec773ddbb5 100644 --- a/data/constants/keycodes/extras/keycodes_portuguese_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_portuguese_0.0.1.hjson @@ -352,4 +352,4 @@ "label": "€", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_portuguese_mac_iso_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_portuguese_mac_iso_0.0.1.hjson index b1c9aaad98..503a3e92a6 100644 --- a/data/constants/keycodes/extras/keycodes_portuguese_mac_iso_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_portuguese_mac_iso_0.0.1.hjson @@ -617,4 +617,4 @@ "label": "–", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_romanian_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_romanian_0.0.1.hjson index 42b1e89d3b..f388523146 100644 --- a/data/constants/keycodes/extras/keycodes_romanian_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_romanian_0.0.1.hjson @@ -441,4 +441,4 @@ "label": "»", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_russian_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_russian_0.0.1.hjson index d83fc0f61f..41904be634 100644 --- a/data/constants/keycodes/extras/keycodes_russian_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_russian_0.0.1.hjson @@ -288,4 +288,4 @@ "label": "₽", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_serbian_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_serbian_0.0.1.hjson index 98957930a0..3ddd7f15df 100644 --- a/data/constants/keycodes/extras/keycodes_serbian_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_serbian_0.0.1.hjson @@ -304,4 +304,4 @@ "label": "€", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_serbian_latin_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_serbian_latin_0.0.1.hjson index ca4746b646..eec0877aa7 100644 --- a/data/constants/keycodes/extras/keycodes_serbian_latin_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_serbian_latin_0.0.1.hjson @@ -404,4 +404,4 @@ "label": "§", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_slovak_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_slovak_0.0.1.hjson index 14eb4b783a..dbf39b5f49 100644 --- a/data/constants/keycodes/extras/keycodes_slovak_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_slovak_0.0.1.hjson @@ -440,4 +440,4 @@ "label": "}", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_slovenian_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_slovenian_0.0.1.hjson index fd1a4eb4fc..d264d3d392 100644 --- a/data/constants/keycodes/extras/keycodes_slovenian_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_slovenian_0.0.1.hjson @@ -400,4 +400,4 @@ "label": "§", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_spanish_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_spanish_0.0.1.hjson index db3b068e97..9656e35674 100644 --- a/data/constants/keycodes/extras/keycodes_spanish_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_spanish_0.0.1.hjson @@ -356,4 +356,4 @@ "label": "}", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_spanish_dvorak_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_spanish_dvorak_0.0.1.hjson index 39119a6a91..fa0a93ff85 100644 --- a/data/constants/keycodes/extras/keycodes_spanish_dvorak_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_spanish_dvorak_0.0.1.hjson @@ -356,4 +356,4 @@ "label": "}", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_spanish_latin_america_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_spanish_latin_america_0.0.1.hjson index fb1de29e6e..51ad69a55a 100644 --- a/data/constants/keycodes/extras/keycodes_spanish_latin_america_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_spanish_latin_america_0.0.1.hjson @@ -340,4 +340,4 @@ "label": "`", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_swedish_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_swedish_0.0.1.hjson index 6db71ea241..f538a81bd9 100644 --- a/data/constants/keycodes/extras/keycodes_swedish_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_swedish_0.0.1.hjson @@ -356,4 +356,4 @@ "label": "µ", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_swedish_mac_ansi_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_swedish_mac_ansi_0.0.1.hjson index ab7c3ad8d1..59f0173e89 100644 --- a/data/constants/keycodes/extras/keycodes_swedish_mac_ansi_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_swedish_mac_ansi_0.0.1.hjson @@ -639,4 +639,4 @@ "label": "—", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_swedish_mac_iso_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_swedish_mac_iso_0.0.1.hjson index cafd815776..cf2c0d9fdf 100644 --- a/data/constants/keycodes/extras/keycodes_swedish_mac_iso_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_swedish_mac_iso_0.0.1.hjson @@ -637,4 +637,4 @@ "label": "—", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_swedish_pro_mac_ansi_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_swedish_pro_mac_ansi_0.0.1.hjson index c82c79c711..911cbc2be8 100644 --- a/data/constants/keycodes/extras/keycodes_swedish_pro_mac_ansi_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_swedish_pro_mac_ansi_0.0.1.hjson @@ -639,4 +639,4 @@ "label": "—", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_swedish_pro_mac_iso_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_swedish_pro_mac_iso_0.0.1.hjson index 4555739ccd..d8e532f792 100644 --- a/data/constants/keycodes/extras/keycodes_swedish_pro_mac_iso_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_swedish_pro_mac_iso_0.0.1.hjson @@ -637,4 +637,4 @@ "label": "—", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_swiss_de_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_swiss_de_0.0.1.hjson index ae260a5e56..e4a5f91158 100644 --- a/data/constants/keycodes/extras/keycodes_swiss_de_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_swiss_de_0.0.1.hjson @@ -376,4 +376,4 @@ "label": "\\", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_swiss_fr_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_swiss_fr_0.0.1.hjson index 83fb86e49c..e518658314 100644 --- a/data/constants/keycodes/extras/keycodes_swiss_fr_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_swiss_fr_0.0.1.hjson @@ -376,4 +376,4 @@ "label": "\\", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_turkish_f_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_turkish_f_0.0.1.hjson index 2689f10dbe..0f527e04d6 100644 --- a/data/constants/keycodes/extras/keycodes_turkish_f_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_turkish_f_0.0.1.hjson @@ -477,4 +477,4 @@ "label": "º", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_turkish_q_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_turkish_q_0.0.1.hjson index e00cee9ce3..e736bb52a2 100644 --- a/data/constants/keycodes/extras/keycodes_turkish_q_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_turkish_q_0.0.1.hjson @@ -372,4 +372,4 @@ "label": "` (dead)", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_uk_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_uk_0.0.1.hjson index 006bf5c59e..aa97e11fa9 100644 --- a/data/constants/keycodes/extras/keycodes_uk_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_uk_0.0.1.hjson @@ -350,4 +350,4 @@ "label": "Á" } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_ukrainian_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_ukrainian_0.0.1.hjson index 2e8629f58b..3596dc14e0 100644 --- a/data/constants/keycodes/extras/keycodes_ukrainian_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_ukrainian_0.0.1.hjson @@ -292,4 +292,4 @@ "label": "ґ", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_us_extended_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_us_extended_0.0.1.hjson index ecac6ca161..15b21dd526 100644 --- a/data/constants/keycodes/extras/keycodes_us_extended_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_us_extended_0.0.1.hjson @@ -585,4 +585,4 @@ "label": "̉ (dead)", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_us_international_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_us_international_0.0.1.hjson index 36a574a4ad..34328be8b8 100644 --- a/data/constants/keycodes/extras/keycodes_us_international_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_us_international_0.0.1.hjson @@ -505,4 +505,4 @@ "label": "¢", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_us_international_linux_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_us_international_linux_0.0.1.hjson index d6bdf2e02d..fcf848dd87 100644 --- a/data/constants/keycodes/extras/keycodes_us_international_linux_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_us_international_linux_0.0.1.hjson @@ -573,4 +573,4 @@ "label": "̉ (dead)", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_workman_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_workman_0.0.1.hjson index 27471a15e4..14220e560e 100644 --- a/data/constants/keycodes/extras/keycodes_workman_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_workman_0.0.1.hjson @@ -299,4 +299,4 @@ "label": "?", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/extras/keycodes_workman_zxcvm_0.0.1.hjson b/data/constants/keycodes/extras/keycodes_workman_zxcvm_0.0.1.hjson index 86f6a5bffb..f05ec1a3ea 100644 --- a/data/constants/keycodes/extras/keycodes_workman_zxcvm_0.0.1.hjson +++ b/data/constants/keycodes/extras/keycodes_workman_zxcvm_0.0.1.hjson @@ -299,4 +299,4 @@ "label": "?", } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/keycodes_0.0.1.hjson b/data/constants/keycodes/keycodes_0.0.1.hjson index 7ba1ecf201..c40baf13dc 100644 --- a/data/constants/keycodes/keycodes_0.0.1.hjson +++ b/data/constants/keycodes/keycodes_0.0.1.hjson @@ -93,4 +93,4 @@ "key": "SAFE_RANGE" } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/keycodes_0.0.1_joystick.hjson b/data/constants/keycodes/keycodes_0.0.1_joystick.hjson index 0bda7c29f3..b851d72eef 100644 --- a/data/constants/keycodes/keycodes_0.0.1_joystick.hjson +++ b/data/constants/keycodes/keycodes_0.0.1_joystick.hjson @@ -225,4 +225,4 @@ ] } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/keycodes_0.0.1_magic.hjson b/data/constants/keycodes/keycodes_0.0.1_magic.hjson index 7ee1f2bce9..0e3e8dc55f 100644 --- a/data/constants/keycodes/keycodes_0.0.1_magic.hjson +++ b/data/constants/keycodes/keycodes_0.0.1_magic.hjson @@ -246,4 +246,4 @@ ] } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/keycodes_0.0.1_programmable_button.hjson b/data/constants/keycodes/keycodes_0.0.1_programmable_button.hjson index 645bcd6a39..7d031728a6 100644 --- a/data/constants/keycodes/keycodes_0.0.1_programmable_button.hjson +++ b/data/constants/keycodes/keycodes_0.0.1_programmable_button.hjson @@ -225,4 +225,4 @@ ] } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/keycodes_0.0.1_sequencer.hjson b/data/constants/keycodes/keycodes_0.0.1_sequencer.hjson index 039d09b2fa..85844ae99c 100644 --- a/data/constants/keycodes/keycodes_0.0.1_sequencer.hjson +++ b/data/constants/keycodes/keycodes_0.0.1_sequencer.hjson @@ -37,4 +37,4 @@ "key": "SQ_SCLR" } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/keycodes_0.0.2_basic.hjson b/data/constants/keycodes/keycodes_0.0.2_basic.hjson index 2b5df85d99..d9cefe7e93 100644 --- a/data/constants/keycodes/keycodes_0.0.2_basic.hjson +++ b/data/constants/keycodes/keycodes_0.0.2_basic.hjson @@ -17,4 +17,4 @@ ] } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/keycodes_0.0.2_magic.hjson b/data/constants/keycodes/keycodes_0.0.2_magic.hjson index 81758975e3..2fc8ba038d 100644 --- a/data/constants/keycodes/keycodes_0.0.2_magic.hjson +++ b/data/constants/keycodes/keycodes_0.0.2_magic.hjson @@ -248,4 +248,4 @@ ] } } -}
\ No newline at end of file +} diff --git a/data/constants/keycodes/keycodes_0.0.2_sequencer.hjson b/data/constants/keycodes/keycodes_0.0.2_sequencer.hjson index eedaed166c..445a2c9328 100644 --- a/data/constants/keycodes/keycodes_0.0.2_sequencer.hjson +++ b/data/constants/keycodes/keycodes_0.0.2_sequencer.hjson @@ -66,4 +66,4 @@ ] } } -}
\ No newline at end of file +} diff --git a/data/mappings/info_config.hjson b/data/mappings/info_config.hjson index b643553b52..bab881583a 100644 --- a/data/mappings/info_config.hjson +++ b/data/mappings/info_config.hjson @@ -201,6 +201,7 @@ // Tapping "CHORDAL_HOLD": {"info_key": "tapping.chordal_hold", "value_type": "flag"}, + "FLOW_TAP_TERM": {"info_key": "tapping.flow_tap_term", "value_type": "int"}, "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_defaults.hjson b/data/mappings/info_defaults.hjson new file mode 100644 index 0000000000..00f50437a2 --- /dev/null +++ b/data/mappings/info_defaults.hjson @@ -0,0 +1,73 @@ +{ + "bootmagic": { + "matrix": [0, 0] + }, + "backlight": { + "default": { + "on": true + }, + "breathing_period": 6, + "levels": 3, + "on_state": 1 + }, + "features": { + "command": false, + "console": false + }, + "indicators": { + "on_state": 1 + }, + "led_matrix": { + "default": { + "animation": "solid", + "on": true, + "val": 255, + "speed": 128 + }, + "led_flush_limit": 16, + "max_brightness": 255, + "sleep": false, + "speed_steps": 16, + "val_steps": 16 + }, + "rgblight": { + "default": { + "animation": "static_light", + "on": true, + "hue": 0, + "sat": 255, + "val": 255, + "speed": 0 + }, + "brightness_steps": 17, + "hue_steps": 8, + "max_brightness": 255, + "saturation_steps": 17, + "sleep": false + }, + "rgb_matrix": { + "default": { + "animation": "cycle_left_right", + "on": true, + "hue": 0, + "sat": 255, + "val": 255, + "speed": 128 + }, + "hue_steps": 8, + "led_flush_limit": 16, + "max_brightness": 255, + "sat_steps": 16, + "sleep": false, + "speed_steps": 16, + "val_steps": 16 + }, + "split": { + "serial": { + "driver": "bitbang" + } + }, + "ws2812": { + "driver": "bitbang" + } +} diff --git a/data/mappings/info_rules.hjson b/data/mappings/info_rules.hjson index 00685b5b5f..238957f170 100644 --- a/data/mappings/info_rules.hjson +++ b/data/mappings/info_rules.hjson @@ -53,8 +53,8 @@ "WS2812_DRIVER": {"info_key": "ws2812.driver"}, // 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}, + "CTPC": {"info_key": "_invalid.ctpc", "invalid": true, "replace_with": "CONVERT_TO=proton_c"}, + "CONVERT_TO_PROTON_C": {"info_key": "_invalid.ctpc", "invalid": true, "replace_with": "CONVERT_TO=proton_c"}, "VIAL_ENABLE": {"info_key": "_invalid.vial", "invalid": true} } diff --git a/data/mappings/keyboard_aliases.hjson b/data/mappings/keyboard_aliases.hjson index b601a42761..0a640fd3e0 100644 --- a/data/mappings/keyboard_aliases.hjson +++ b/data/mappings/keyboard_aliases.hjson @@ -146,6 +146,9 @@ "daisy": { "target": "ktec/daisy" }, + "deemen17/de60": { + "target": "deemen17/de60/r1" + }, "dp3000": { "target": "dp3000/rev1" }, @@ -347,6 +350,9 @@ "keycapsss/plaid_pad": { "target": "keycapsss/plaid_pad/rev1" }, + "keyten/kt60hs_t": { + "target": "keyten/kt60hs_t/v1" + }, "kira75": { "target": "kira/kira75" }, @@ -581,6 +587,9 @@ "ploopyco/trackball": { "target": "ploopyco/trackball/rev1_005" }, + "plywrks/ply8x": { + "target": "plywrks/ply8x/solder" + }, "polilla": { "target": "polilla/rev1" }, diff --git a/data/schemas/community_module.jsonschema b/data/schemas/community_module.jsonschema index 3cdb6d6a42..feced00508 100644 --- a/data/schemas/community_module.jsonschema +++ b/data/schemas/community_module.jsonschema @@ -7,6 +7,7 @@ "properties": { "module_name": {"$ref": "qmk.definitions.v1#/text_identifier"}, "maintainer": {"$ref": "qmk.definitions.v1#/text_identifier"}, + "license": {"type": "string"}, "url": { "type": "string", "format": "uri" diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index 92a17e1ef8..4e8bae1084 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema @@ -319,7 +319,7 @@ "properties": { "driver": { "type": "string", - "enum": ["custom", "embedded_flash", "legacy", "rp2040_flash", "spi_flash"] + "enum": ["none", "custom", "embedded_flash", "legacy", "rp2040_flash", "spi_flash"] }, "backing_size": {"$ref": "qmk.definitions.v1#/unsigned_int"}, "logical_size": {"$ref": "qmk.definitions.v1#/unsigned_int"} @@ -554,6 +554,7 @@ "items": { "type": "object", "additionalProperties": false, + "required": ["x", "y"], "properties": { "matrix": { "type": "array", @@ -640,6 +641,7 @@ "items": { "type": "object", "additionalProperties": false, + "required": ["x", "y"], "properties": { "matrix": { "type": "array", diff --git a/data/templates/keyboard/keyboard.json b/data/templates/keyboard/keyboard.json index 94085d7f5a..87aa853cbb 100644 --- a/data/templates/keyboard/keyboard.json +++ b/data/templates/keyboard/keyboard.json @@ -14,8 +14,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/docs/_sidebar.json b/docs/_sidebar.json index ae4d8fe4a9..f504f6f900 100644 --- a/docs/_sidebar.json +++ b/docs/_sidebar.json @@ -227,6 +227,7 @@ { "text": "ADC Driver", "link": "/drivers/adc" }, { "text": "APA102 Driver", "link": "/drivers/apa102" }, { "text": "Audio Driver", "link": "/drivers/audio" }, + { "text": "Battery Driver", "link": "/drivers/battery" }, { "text": "EEPROM Driver", "link": "/drivers/eeprom" }, { "text": "Flash Driver", "link": "/drivers/flash" }, { "text": "I2C Driver", "link": "/drivers/i2c" }, diff --git a/docs/cli.md b/docs/cli.md index 7d4c10cedd..36983d5e00 100644 --- a/docs/cli.md +++ b/docs/cli.md @@ -6,7 +6,7 @@ The QMK CLI (command line interface) makes building and working with QMK keyboar ### Requirements {#requirements} -QMK requires Python 3.7 or greater. We try to keep the number of requirements small but you will also need to install the packages listed in [`requirements.txt`](https://github.com/qmk/qmk_firmware/blob/master/requirements.txt). These are installed automatically when you install the QMK CLI. +QMK requires Python 3.9 or greater. We try to keep the number of requirements small but you will also need to install the packages listed in [`requirements.txt`](https://github.com/qmk/qmk_firmware/blob/master/requirements.txt). These are installed automatically when you install the QMK CLI. ### Install Using Homebrew (macOS, some Linux) {#install-using-homebrew} @@ -20,7 +20,7 @@ qmk setup # This will clone `qmk/qmk_firmware` and optionally set up your build ### Install Using pip {#install-using-easy_install-or-pip} -If your system is not listed above you can install QMK manually. First ensure that you have Python 3.7 (or later) installed and have installed pip. Then install QMK with this command: +If your system is not listed above you can install QMK manually. First ensure that you have Python 3.9 (or later) installed and have installed pip. Then install QMK with this command: ``` python3 -m pip install qmk diff --git a/docs/cli_development.md b/docs/cli_development.md index 2e74220d4b..74ac53d327 100644 --- a/docs/cli_development.md +++ b/docs/cli_development.md @@ -44,7 +44,7 @@ def hello(cli): First we import the `cli` object from `milc`. This is how we interact with the user and control the script's behavior. We use `@cli.argument()` to define a command line flag, `--name`. This also creates a configuration variable named `hello.name` (and the corresponding `user.name`) which the user can set so they don't have to specify the argument. The `cli.subcommand()` decorator designates this function as a subcommand. The name of the subcommand will be taken from the name of the function. -Once inside our function we find a typical "Hello, World!" program. We use `cli.log` to access the underlying [Logger Object](https://docs.python.org/3.7/library/logging.html#logger-objects), whose behavior is user controllable. We also access the value for name supplied by the user as `cli.config.hello.name`. The value for `cli.config.hello.name` will be determined by looking at the `--name` argument supplied by the user, if not provided it will use the value in the `qmk.ini` config file, and if neither of those is provided it will fall back to the default supplied in the `cli.argument()` decorator. +Once inside our function we find a typical "Hello, World!" program. We use `cli.log` to access the underlying [Logger Object](https://docs.python.org/3.9/library/logging.html#logger-objects), whose behavior is user controllable. We also access the value for name supplied by the user as `cli.config.hello.name`. The value for `cli.config.hello.name` will be determined by looking at the `--name` argument supplied by the user, if not provided it will use the value in the `qmk.ini` config file, and if neither of those is provided it will fall back to the default supplied in the `cli.argument()` decorator. # User Interaction @@ -56,13 +56,13 @@ There are two main methods for outputting text in a subcommand- `cli.log` and `c You can use special tokens to colorize your text, to make it easier to understand the output of your program. See [Colorizing Text](#colorizing-text) below. -Both of these methods support built-in string formatting using python's [printf style string format operations](https://docs.python.org/3.7/library/stdtypes.html#old-string-formatting). You can use tokens such as `%s` and `%d` within your text strings then pass the values as arguments. See our Hello, World program above for an example. +Both of these methods support built-in string formatting using python's [printf style string format operations](https://docs.python.org/3.9/library/stdtypes.html#old-string-formatting). You can use tokens such as `%s` and `%d` within your text strings then pass the values as arguments. See our Hello, World program above for an example. You should never use the format operator (`%`) directly, always pass values as arguments. ### Logging (`cli.log`) -The `cli.log` object gives you access to a [Logger Object](https://docs.python.org/3.7/library/logging.html#logger-objects). We have configured our log output to show the user a nice emoji for each log level (or the log level name if their terminal does not support unicode.) This way the user can tell at a glance which messages are most important when something goes wrong. +The `cli.log` object gives you access to a [Logger Object](https://docs.python.org/3.9/library/logging.html#logger-objects). We have configured our log output to show the user a nice emoji for each log level (or the log level name if their terminal does not support unicode.) This way the user can tell at a glance which messages are most important when something goes wrong. The default log level is `INFO`. If the user runs `qmk -v <subcommand>` the default log level will be set to `DEBUG`. diff --git a/docs/coding_conventions_python.md b/docs/coding_conventions_python.md index 502ee9102e..b25466bf82 100644 --- a/docs/coding_conventions_python.md +++ b/docs/coding_conventions_python.md @@ -2,7 +2,7 @@ Most of our style follows PEP8 with some local modifications to make things less nit-picky. -* We target Python 3.7 for compatibility with all supported platforms. +* We target Python 3.9 for compatibility with all supported platforms. * We indent using four (4) spaces (soft tabs) * We encourage liberal use of comments * Think of them as a story describing the feature @@ -317,7 +317,7 @@ At the time of this writing our tests are not very comprehensive. Looking at the ## Integration Tests -Integration tests can be found in `lib/python/qmk/tests/test_cli_commands.py`. This is where CLI commands are actually run and their overall behavior is verified. We use [`subprocess`](https://docs.python.org/3.7/library/subprocess.html#module-subprocess) to launch each CLI command and a combination of checking output and returncode to determine if the right thing happened. +Integration tests can be found in `lib/python/qmk/tests/test_cli_commands.py`. This is where CLI commands are actually run and their overall behavior is verified. We use [`subprocess`](https://docs.python.org/3.9/library/subprocess.html#module-subprocess) to launch each CLI command and a combination of checking output and returncode to determine if the right thing happened. ## Unit Tests diff --git a/docs/configurator_diagram.drawio b/docs/configurator_diagram.drawio index 091a3a76b8..661f884def 100644 --- a/docs/configurator_diagram.drawio +++ b/docs/configurator_diagram.drawio @@ -1 +1 @@ -<mxfile host="Electron" modified="2021-08-09T19:46:29.036Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/14.6.13 Chrome/89.0.4389.128 Electron/12.0.7 Safari/537.36" etag="PQ2r34UrZa0TfW4Fw0EV" version="14.6.13" type="device"><diagram id="NEtccoSKIy4HskWlhJpu" name="Page-1">5VvbcqM4EP2a1O4+hOLqy2Ni5zKX1CTxzszOU0oG2dZEIBZEYu/XbwuEDQg7csZ2vFlXjQca0RLdR+eohXPiDML5VYLi2Q0LMD2xzWB+4gxPbNvqezb8JywLaTFtr7BMExJI28owIv/gsqG0ZiTAaa0hZ4xyEteNPosi7POaDSUJe643mzBa7zVGU6wYRj6iqvU7CfissPY8c2W/xmQ6K3u2THklRGVjaUhnKGDPFZNzceIMEsZ4cRTOB5iK6JVxKe67XHN1ObAER1znhgfT76Zzxxp3Z49j5+7zjw/z+NSS+XlCNJNPLEfLF2UIcAARkacs4TM2ZRGiFyvrecKyKMCiHxPOVm0+MxaD0QLjT8z5QqYXZZyBacZDKq/iKDgTyYLTiEW4sFwSSqXLAKWz3L9orD64jEXKssTHG57WlQBCyRTzTVGRDsWTV3qQcb3CLMQ8WUCDBFPEyVMdK0hCbrpst8oKHMjEbJEk9+UckTDHcTWm0jQk4RR6pWQM3z4l8QNKuDhkYZxxnKRw/J0ljymHJ2HRg2X35vDPiKPp2kA/4YTj+cbIyKunjmv0zMpHeljSQXH6XJla0jSrzKrStvPIei9Hdgm9HNoZpyTCgyXZmPWYI0qmERz7EDGcgIGiMaa3LCUittULIoQEaOZzo8GYcc7CSoMz6ZKLqXQOJBKLgYXzqSBc4xmPKcy11JgSPsvG0GLCIn6JQkJFiK8xfcLCjbwgJyDM+uJ8wChL8ud0ivSILnjCHnHblQlMyIp9kn/ADkMJCK55G14OL4YXmybrFhhyOzXQtKEGdMVwVeBUzDvHTjmKjdS54jWfojQlfpP3YCR/CRwZXnn6o3ptOJcgK84W8gwma8JVz7lZ0qZVI9Ff401PkzddTdqsJM5rme6lTZtdZQ+3jMCTLXFjlRkqyaZJI8Vzy7uqytl01Gk4chqOisAojnJYLR/7F5BWTpkV0gZUTDjgbnOUxTEorqCosxO7QyGG5+MEjqbiaDBLoPsTGzo2L0mCJ2yuNhri9FHQi21+iehCAfHzjHA8ilEOkWegnTqGm0QVkiDIVwU5950j/3Garw9Kdsjd7YYZlmurkhlUYrDNFoB19qUnltPCCUW40xhFZcBnnIvl65noTChxNCFT4+/w0ZiEZXOwV+9Qk9bmd0SiKYTeNm+F9AM2RKTX3tno4iN6QiM/IbFYHXz7eqHeOJI8AeM2YbTQDL4fiuFnCeIs0RvmNUt54eWqUK1iwOnaZ28Asr7cfC0894E/q2PYehDs7w2CGqtFdbndqklVRaoI1BpN2tEaXVdryql2JGKzTKiEgvdasXHchqNDi01XAz/vpiK0tOHW0YTbYUpC6/1ULj9TuH0XlWZ93riOuhjotsz/rmf09pWkjpKkuvI/4sWYoSRIG+K/ks9PsgV4ucEcBYgjXV2ekCR8hoiq7a+uoeGZX+RN3PQ1BsdiwXB2+wG+h629rFR7SKDaRPSLj4VIm7n2ptsuG2voPKRIu7Zt9N9apHtbiXRr7VirASVHVgtAc4cFoDZNekclypZnWK5p9Tp9y+v1up1y73nRQMbWBWHdz3LP90ASbav14HuW6L4m9spsHotE95Us3d18Kkm2mS5KSZziik76lGXBy+XNLpTTq8O5Y6rKadkts3Rv27JlZ2uFE8VkrWTeX4z+nGS0DLSeWILDTYp3jyJ/Bqsf2xRrFXP4Bb6+3fy2tegdUuc6pqenct29pVFjkfryDulhtzDLWXskCnbarCtd75WadaoUlpqqBelBi0qzWDRINwzZanTkOObmkTVv8Pq1G+CgGMNuRVSl53csonZXV0R7RyWitrobIasPMMoCRGF4WY807b+PnD+OS3idXh347fuHrdrbt8qWu4+5WpzU1RcE81QocLTwHcMPIiMoUsJEPtI8+obPWqRZRlNK7+kLoqskejut3UWCeg1msh3L6PYrn54qsf2WbO3thYOjrpTeTGK1Oea4ikSQ/EaSX7t1qwiZfeC9W6ft9dO71TSn/D3YS3hz7KPSNEct3+/vlDyVciS2/FLOEnwYSWpskXS7ai3YOSjB2WqwcEDEm+9cjEwRuqaGfGTineJdhrOW3c/2AjApnO6/BNxBkpqVXrfz1pWes91Lx73KkPZ+UTkP31qHyiw26zFt2fEacGiWiPtWHXWNXvwuIIwpETNmDbPhuZhhAcvG+RWrJj3Wm2x99Vt+QXLYrS9XXdAVu4YDCCehIpztbHefRVH+a07dX22sc/efoLy+/daU5+pswh+I8vRXQt3joDyZVbeW015ztaxLgHU3/eZbnT3Tn6uuULYGwoF/z+lo7wYdF16AHes00GuuO/V3Qxui2bP0ULP1bqjTYK5yS2Gvm5vu/6sQ1IVzKa67KwTXEJK3GVu6KLWd14H0ZRjB6eovj4rmqz/gci7+BQ==</diagram></mxfile>
\ No newline at end of file +<mxfile host="Electron" modified="2021-08-09T19:46:29.036Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/14.6.13 Chrome/89.0.4389.128 Electron/12.0.7 Safari/537.36" etag="PQ2r34UrZa0TfW4Fw0EV" version="14.6.13" type="device"><diagram id="NEtccoSKIy4HskWlhJpu" name="Page-1">5VvbcqM4EP2a1O4+hOLqy2Ni5zKX1CTxzszOU0oG2dZEIBZEYu/XbwuEDQg7csZ2vFlXjQca0RLdR+eohXPiDML5VYLi2Q0LMD2xzWB+4gxPbNvqezb8JywLaTFtr7BMExJI28owIv/gsqG0ZiTAaa0hZ4xyEteNPosi7POaDSUJe643mzBa7zVGU6wYRj6iqvU7CfissPY8c2W/xmQ6K3u2THklRGVjaUhnKGDPFZNzceIMEsZ4cRTOB5iK6JVxKe67XHN1ObAER1znhgfT76Zzxxp3Z49j5+7zjw/z+NSS+XlCNJNPLEfLF2UIcAARkacs4TM2ZRGiFyvrecKyKMCiHxPOVm0+MxaD0QLjT8z5QqYXZZyBacZDKq/iKDgTyYLTiEW4sFwSSqXLAKWz3L9orD64jEXKssTHG57WlQBCyRTzTVGRDsWTV3qQcb3CLMQ8WUCDBFPEyVMdK0hCbrpst8oKHMjEbJEk9+UckTDHcTWm0jQk4RR6pWQM3z4l8QNKuDhkYZxxnKRw/J0ljymHJ2HRg2X35vDPiKPp2kA/4YTj+cbIyKunjmv0zMpHeljSQXH6XJla0jSrzKrStvPIei9Hdgm9HNoZpyTCgyXZmPWYI0qmERz7EDGcgIGiMaa3LCUittULIoQEaOZzo8GYcc7CSoMz6ZKLqXQOJBKLgYXzqSBc4xmPKcy11JgSPsvG0GLCIn6JQkJFiK8xfcLCjbwgJyDM+uJ8wChL8ud0ivSILnjCHnHblQlMyIp9kn/ADkMJCK55G14OL4YXmybrFhhyOzXQtKEGdMVwVeBUzDvHTjmKjdS54jWfojQlfpP3YCR/CRwZXnn6o3ptOJcgK84W8gwma8JVz7lZ0qZVI9Ff401PkzddTdqsJM5rme6lTZtdZQ+3jMCTLXFjlRkqyaZJI8Vzy7uqytl01Gk4chqOisAojnJYLR/7F5BWTpkV0gZUTDjgbnOUxTEorqCosxO7QyGG5+MEjqbiaDBLoPsTGzo2L0mCJ2yuNhri9FHQi21+iehCAfHzjHA8ilEOkWegnTqGm0QVkiDIVwU5950j/3Garw9Kdsjd7YYZlmurkhlUYrDNFoB19qUnltPCCUW40xhFZcBnnIvl65noTChxNCFT4+/w0ZiEZXOwV+9Qk9bmd0SiKYTeNm+F9AM2RKTX3tno4iN6QiM/IbFYHXz7eqHeOJI8AeM2YbTQDL4fiuFnCeIs0RvmNUt54eWqUK1iwOnaZ28Asr7cfC0894E/q2PYehDs7w2CGqtFdbndqklVRaoI1BpN2tEaXVdryql2JGKzTKiEgvdasXHchqNDi01XAz/vpiK0tOHW0YTbYUpC6/1ULj9TuH0XlWZ93riOuhjotsz/rmf09pWkjpKkuvI/4sWYoSRIG+K/ks9PsgV4ucEcBYgjXV2ekCR8hoiq7a+uoeGZX+RN3PQ1BsdiwXB2+wG+h629rFR7SKDaRPSLj4VIm7n2ptsuG2voPKRIu7Zt9N9apHtbiXRr7VirASVHVgtAc4cFoDZNekclypZnWK5p9Tp9y+v1up1y73nRQMbWBWHdz3LP90ASbav14HuW6L4m9spsHotE95Us3d18Kkm2mS5KSZziik76lGXBy+XNLpTTq8O5Y6rKadkts3Rv27JlZ2uFE8VkrWTeX4z+nGS0DLSeWILDTYp3jyJ/Bqsf2xRrFXP4Bb6+3fy2tegdUuc6pqenct29pVFjkfryDulhtzDLWXskCnbarCtd75WadaoUlpqqBelBi0qzWDRINwzZanTkOObmkTVv8Pq1G+CgGMNuRVSl53csonZXV0R7RyWitrobIasPMMoCRGF4WY807b+PnD+OS3idXh347fuHrdrbt8qWu4+5WpzU1RcE81QocLTwHcMPIiMoUsJEPtI8+obPWqRZRlNK7+kLoqskejut3UWCeg1msh3L6PYrn54qsf2WbO3thYOjrpTeTGK1Oea4ikSQ/EaSX7t1qwiZfeC9W6ft9dO71TSn/D3YS3hz7KPSNEct3+/vlDyVciS2/FLOEnwYSWpskXS7ai3YOSjB2WqwcEDEm+9cjEwRuqaGfGTineJdhrOW3c/2AjApnO6/BNxBkpqVXrfz1pWes91Lx73KkPZ+UTkP31qHyiw26zFt2fEacGiWiPtWHXWNXvwuIIwpETNmDbPhuZhhAcvG+RWrJj3Wm2x99Vt+QXLYrS9XXdAVu4YDCCehIpztbHefRVH+a07dX22sc/efoLy+/daU5+pswh+I8vRXQt3joDyZVbeW015ztaxLgHU3/eZbnT3Tn6uuULYGwoF/z+lo7wYdF16AHes00GuuO/V3Qxui2bP0ULP1bqjTYK5yS2Gvm5vu/6sQ1IVzKa67KwTXEJK3GVu6KLWd14H0ZRjB6eovj4rmqz/gci7+BQ==</diagram></mxfile> diff --git a/docs/configurator_diagram.svg b/docs/configurator_diagram.svg index bcf0bf76d1..1e540d70a6 100644 --- a/docs/configurator_diagram.svg +++ b/docs/configurator_diagram.svg @@ -1,3 +1,3 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> -<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1261px" height="991px" viewBox="-0.5 -0.5 1261 991" style="background-color: rgb(255, 255, 255);"><defs/><g><path d="M 885.2 40 L 1060 40" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><image x="804.7" y="-0.5" width="80" height="80" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHcAAAB8CAYAAABT/i9JAAAgAElEQVR4Xu19CbhdZXnuu/Y8n3k+OUPmhAyQQMJMQCZxqFpBvU7VKk6otQIq4BBBLVQF7a2ot/a2trW3j09br+3F1lZAJBBIQkLInJOcedjD2WfPwxrv8/3/+tdee+eckIRDCMcsnnCmvdfee73r/Yb3+77/l3D+OKMr0NbZ8xmfz/95p9PVkEonP5SMTf7zGZ3oVXyS9Cqee8GdurV10RKP3/tIMBS+0e3xegzDAP3TNA3pmcQTU+PD1wPQz5UPfh7cU0Cis6fvM35/6PPBcF0PXTACVNd19lWWy8hnZiBJBnKZ9NJ0On3sFE55Vh5yHtw5LnNbb29/wO3/fjBcd6PX5/MYugGdmGqCmkknIZcKcLlcYIDDQHomeR7cs3LbnuGL9PYvuSMQjNwVqqvvkSBxQA0dBG6pXER2ZpqB6XA5icKMvfSPvk+nzoN7hpf91Xtab29vv8cf/n64rv5Gnz9QxVLd0JFOJlAqFuBymyy1g0qcZdgayJwH99UD6XTP3L985R3BYPiu+vqmHkmqZmmxWEAqGWcG1+kklnIA6T9AgivYjIBHwkx8gjMYBO7MebN8uiDM5+N7e1f0B8OB74XrG28KBAMeXTdNq66zIGl6OoZSPgeX2819qQkcM71OP3zNfWjoXgU5n4YrN4TxwUOWWc6kz4M7n1id8rmWr1x9RzBSf2dDY0uvwyGBg0qAGigW8piOT7FzMZYyU8v/SZIL4dZeRDpWQPLVM4YSzvmZKbgZuAfNxwLZ8+CeMh6v+IG9K1b0hwOR7zU2Nt0UCIYqLDV0aJqORGwC+VwOHo+HvZYAlL66A/Vo6V2Ftv41cDg9KJZkZDIZ6Dx2QoHAzQ9h/LgJLgxk06nzZvkVo/YyJ1i5dv0ddZGGOxubW3slh8QiXcHSfD6H+NQEIJEvdVVFvJLkQF3HEnQsXofG1m4oGt0EGlRVR0kuI5PNmcETZ64nP4QxE1z6QzZzHtxXBdsVK9b1ByKB7zU1td4UDIc9PCel3FSHrumYmhhDPp+Bxy1YWvGnHn8EnUvXo2vxGji9PsZqTdVs4GoolRXkcjnOXBBzJ+HJD2Ps+AGL8edFjHmG9oILN3yqvr7xrpbW9l7J4aiw1CDFKIPo5Djzky6nqyo4oui4qXMpelduQFP7IqgalxFVk6nse12HqumMucVSGYVCocLc1CS8BO4xE1ycV6jmBdoV69b1RwJ1jzS3tt0citR5hMggWDoxNoxsJgOP12ulKcKf+gIRBmjv8rVwewMWeKqucoBVjTGXg0xgc/9cKJVQKpUrPtcEd/TYfitNymXPy49nDPCFGzZ/qr6p8a7Wts5eh5OzVChImVQKk+OjjKXXfOh+/Oaf/hKeUtxMU4C23mVYesElaOvuhaYbjI0MQAaiyVrxO12DRt/rOjSFMziXL0BRVM5cGCikphhzCVyhUOWymfMB1emgu27duv5AXdMjbe0dN4cZSyu+VFNVjA4PIZtJw+PzWcHRRW//LJ79xU8QCRhYdsElWLZ6A9xeP2MisdAeKHHTq3K2EqCqDk3nQRQBr+k6FFVDPl9gj+HRsoFiagqewjDGBji49F/+PLinBu2GzZd9qqGp5c6Oju4+J7HUVolJzyQxOjrMzCEJ99zkckaR8NDRuwyrL7wUnT39jKUc0IqJJbAoyJJNs0vfMxNMTNU0BiYPqkyfq2nI5nLs7OK1BLijA/vMmwrI584zd050N27c2BOINP5FW0fXTXX1DV6RvtBXYung8WPIpNPw2ljK5EDDgD8QxqqLLsXqdRvgDQQ5A22+U2GMNEEUv9cMzk4RGdvYave5ZI6LxRK7gbgbAIrpKXgLwyBwhVnO57LnzXItupsvu/pTTa0td3Z0L+pzOpxmaY3nptOJBEaHB7meSyy1q0eQsKh/OdZtuhy9vUu5L2UAqqZZ5X6zApQAU/yO/m76VxNwzlx+IxBzFV1DuVyGLJv+VoBLPrc4jNGjHFzmh8+Dy6HduPGKnkhj5C/auxfd1FDfyFlq1ksVVcXxo0eQTs3A6/NXqUeMpcEA1l9yJdZvuIQxlgdGnJVkfjViJDO5ZJJV5mPZ36tSHf547mvNnNZkNmO4Qv6W+95CscTlSlN6JL9LZtlXHMbI0ZcsX1/I536/mXv5Vdd9orm19e6unt4+l7OapYlEHEPHjgGSyVJbaY1qq71Ll+OSy67C4iXL2I0gIlpimshPK0ALQCnFqfhP5nuFiRZ+mBhKQJsstm4QAldRbSmQKO9xs+wrDGNk4CXLLP9egrvxiit6muoav9+5qOfmhoZmL+WjPOrVISsKBg4fQkqw1AKUqb3wBf245LKrccmmyxAMmixljDM4I8kEM8bZgiZbIMQZa/paK4etAC9ukEpqxNUp4a/LZQWKRia5Aixn7iT8xRGMHN1rBXPF3yfmXnXd9Z9obWu7e1Hv4j5SiOySYCw6hcFjA9TTUIl4TX8KQ8fiZStw5TXXYfnyFeziMT9oRb3cT3Jwud9UFDNgIp8pclcC3jLJFXYL9Ymdj8w3Oze/STioHGD6yoQLK5/m0iMLqKrA5RWkYiG/sM3yFVdc3xNuCn+/p6fv5sbmFq9oJBMsPXRgP2aSSfj8gSr1iEe8flx+1RZcfsWViETCDEBZsI5FtjxQ4nmq6StZ4MN9JmdfdZQs5EPL32oGT4PMKLk6guapEGezCkVWURbCRRVzDZTSU4y5w0f2WiXCBQ/uO9793rGGxqau1rYOKzedmpjAwNEjoKoLtaqIthSRQixZtgw33HgjVq9aRaS1BUAUDNnVJGKaWakxWSdECZbSMNZSMGQKEJZgMVt0LExvJdAiUO1gC9baAynx3jm4wwxc8TmKxcLCZu77PvyxeG//4uax0WHEo1FMT0/D5w9a2Y+4EJSrXnXNNbj22mvQ3NDIGMejWm5KeZAk2MhlQvY7FslW/KiIaK2giokWFSGCsZydi7OegWfLf4VvFWaeiRfEWkWDLCuWImX2wDGzTO6FwA3YwKXPVVro4L73Qx+N9/QtbiY0H/+vX3Pzazv6+vpww0034sK1a+GiDkK6WEziMwE10w8R1VI6Q6kRD5ooiCKpUKQ6Zgpk/syrOmbka/pny4eKn0VkzEAUNw/dUDxI48qUipKssL/XBlLiZwZuaRhDh1+0UrVUsbC0vJD7lt/zwY/Ee/r6GbhP/ua/q8D90r33oG9RdxXYdLE4YwkwzlpZ5TVY+j2XDSklqWay8LuCpZXASQBuD4wq0qMIwKwcl4HKH0vn1Ml/qypjrV2REoGUJT+mpxA0wRXWKFUqLmxw3/3+D8cXmeA+9cTjVeA+/N3vIBDgooQ4GAs1jQVOQh0SOSsPkipiv/V7M4iqmG0TGDNStgsT9BzdZL+9aCAKBdxPc/B1M/ImRUrTeVRczVyhYYOb5dIwhg+/aBXr06ni0nJ5AU8c3Pa+D8YX9XLmPv3bJyv+1jDw8MPfrQKXfJeIcJlPNVMYlp7Y81NmqvlNYEXLTOgXZtgWITOgeF22okqZ1R5xA9mKCKKNhqVBZI7LMmOyKERw9p4INIkYwfIwhg7tMaNlYMGDe+t7PxDv7ulj4G576in4AzyYIgY8UgOuAJD5VMZgEUjZgDHLcNznmt0RigbF9JeceVxmtAdglRJe5SawgLSlSyyNMvNbRVFs5riatSKQEoEVMVeAK8xyOp1aWi6XF+6s0Dvf/f54V08vA/fZbU/PCS4rxZkRseVXmVBfqavatWAC154GCVZyEcIwdWAOFPPXImUywWMmV3RWWDcK5bRmMUGjVhqhIdea4xOBrgWXAM4sdHDf/q73xrsXcXCfe/YZBq64sx955GHLLFdYWmEcz2lNFpPqRP6WRcgiIOK/48BWQKkKuMwAjD2PtGJR7WHacSXFYmKFGUyRby/LZVYsEMwUpb3aQEqY6LLF3N1WpSqTTi9s5r7ttv8R7+ruYeDueG67BS4B/D0TXJH6UDAlCuaWAFFlmm0yo5WbVoQGqwjAmtkoZeJF+EogZhbgrZaaSquq1QBH1kJRGbhz+dfZgC6lowiVhzF4aLdVFcpkFji4b33nuy1wd+143oyWeZRJ4Pr9/irBgphFqY9dThTlOqvSY9ZVrSBJiBmW6eV1V2Hm7W0yXDfm6RSPlrnIIfwvPZbMMd1oFaGCfz9bIMVbWw2UGbhDDFx6LP1vwYP7lne8K97ZvYgxd/eunQxcYZa/971H4PN5udIkhH+rX6kmmLKxzfKvTPcV5pgrViw3NWVHDj4PzERfVJV2bPZH2W+SsixDUXlOWwHUDnSl+8ICnylUUYTlIQwerJjlbCazsM3ym99+W7yjq5uB++LuXSwVEm2lBK7b4zEBsBUBqoA20x2rTYYLGcJ3iuqQAFAUCuzFBMHSSiHBrOmaUTI7HxUlFBlU0mP9WWaz+VyKFE+NKkATcwnc4wcrZjmbXeDg3vIH77TA3btnN/zEXLOU9/DDj7C5HCFYCKmQpzBmMGX6Tt7+woMpxjQKhsyynuWfRRXIVLaEbmw9h4EpqkmC8Sprx5FZEd6Mjq081sZSs7QnwK410eWMAPcFq312wYP7xre+Pd7eyZm7b++LXMQwC/Dfefi7cLu9VltMpUxnb5OxFwu4hsxNq6gQVboUuZRY8deiKM/0YUtSJDCrRQwCllpn2AyRrXXmZIqU+JsVLWeiiBBzD7xg3by5bHZhm+Wb3/y2eFtnFwP3wL6XTJ/LafDQt78Dt9drkxTt0XClJmtvRbVyU5EDW8NZwr9WTC4H19aDzIoDogdZlAE1FKgH2ZzLrTCSB0ovF0gJv0vMJXCPHXjBunlzuQUO7g1vemu8vYODe3D/PvjJ55pm+UEC1+0xi+vC5FZSlyoVik0BqDX1W5ORpuzIo+Na8EQzuVlNsqlRFHjl80WWMvEAt7p1xv5zrSJVy1w5O4WIPIxjB3ZVJg5yuYXN3OtveUu8rb2TgXv44IEqs/zNh/4cHg83y4o5wsFrtKLVxazO2HRh0azGW2LMdhhbK4zVzCYYPSvYPB2iQS4yyfao93QDKfFcOTOFiDKMY/t3WTdvfqGDe93Nb463tXcwcI8cOmhTqIAHvvUg3B4akaxow7WFc+GHyZyKgr09gOIaskh3KmadixKiVZXfJLrJfLIIpWKRFQVmTXdszeZzKVKVqQae/wpwj+/faVWP8vkFztzrbrol3trGwT165HCVWb7/mw+yybuqLguarhNRsa0PyqoSmZ0UvNtRtRrjeMDE/SvPdUWR3uxbZg1vvOpUpvHLYsEmSrycf62U9mrNsfhZJp+rEnN3Wj43n88vbLO85fo3xlva2xm4x44egT8Qsj78177xZ/AKcK2Jutq+qEqPlBjKEnJiRWUSEbJZkNerQefRMg+0ikUZ+WLeZoq5rz3TQEoU8AncOmaWd/IVbgwDCx7ca95wc7ylrY2Be/zYQFXh4CsPfAsej88c17D1RdkZa6U+tujZHNDibObpERveEqMf1jQBj46FAlUolFAoFq3A6Uz9a9XNYEbUHNwhDq6Z6hUKhYXN3KuvvSHe3MqZOzR4nINrRstf/vq3mELFxYlq32kv2tvbU63ujJrRSuZ3mY8VfpeLHkJuzOfzbGC6qlXGVnR/pUArWQ7ugM0sL3hwr9xyfby5hTN3eHgQAVby46bw3q3fYAFVVZ3W9Km8j8pe2hNdirwbUUTLHHgheoheK1H94QFVJptlyxxYooSpNonZ2kq0fOqKFE+NKumTBe6+ille8OBecfV18aaWVgbu6MgI/MGKQvWlrxK4PBWywLKNVVrihdmCWinOV1pnRI1WTAsIoEXnRSqTRtmMimcNhs5QkapSrwBUwN1hmeVikXqoFnAnxqVXbYk3N3Nwx8fGLLNMNLr7yw/wPFe0y1h9UnbW2vqWWbRrKk42MYJAJ0GiYr4pKFORSqVBVR4r3akRKuYjkGLlPQBqegwRbRxH9+2wAsYFD+7mK6+JNzW1MHAnJsZNs8xnae5i4FJVqDL6wUxx1VC0fSzEbGu1m2zb0gYCZCr4J2dmQD1QVVGwqUC9Uv8qmuXYDZWZRFudC35HGYdfeh6pxBSv58LAggd30+VXxxubmhm4U5OTVWb58/fcD4+XwDW7Gc31JrhpFUUC+9xPhZ21s0FiiYNyScb0TIpZA7vQMJ+BFK3z6FWT6GoJIzFxHGODh1HIpy3GmtGyoShKd6FQmLC37r6W38/7YtoXX3qlBS5N8lGey4r1MPC5e7ayqpCo2IgASvRFiaFnEh94p0QlcLJqtLaOi0w+j3Q6Bd3WY1xVmnsFgRSxVE6PoyXsgE+SMXL8AOKTI2w6QlS56GNpmlpQFOUXLpfrs9lsNvFagln72vMO7sZNV8QbmpoYc+PxWJVZ/uwXv8YUqkraU2lE57VYE0xWtxUMNhcfsXqkeH8zmeFcrrLol24GSifoxiL9OcVASs6n4JKT6Gj0Y3pqGBNDAygUshVAwZbANxRZPqqq6tdLpdI/nEuA2t/LvIO74ZJL4/WN3CzTehb2aPkzX/gqK/mxPFc0lZs9TlUdFvZ1KkTkbEqNpA/HE0m2t8Cp+teXC6RIgy6lJtDkB3yOMkaOH8Z0bLzCUjNPVxWlqCjqLyUJn8nlcrFzFVTxvuYd3Asv3hyvb+DMnUlOVxQqAJ+66ytmVagyNM0iXnsDnK1HSkzMi+Z1WmE1Pp1kAVm1f62RE08xkCJfKpUSaG/wIjE5gsmxQZQKOXZthOpELJXL5QFNUx/I5/M/PdcBfVWZu37DpnhdQyMDlxYsEX3LdLE++fmvcLM8h2Bhb2YTOS/N+VA6FJ9JIpXKVM3vnNCdaPlYW4ObKTyIiFmnbsfkOOo9GrwoY2x4ANMs4rX7UgOqIhdlWf5/uq5/Op/P88WYX2fHvDN3zUUXx+vrGxi4mXQGgWClQe7jf3ofPF6f2Rdlztra11q0lkGwLVtQlhGNxXhbjOhQPKl/5QvV15b2SoUMkIuhtc6D6alRRCeGUSoVqoIjtlaHrseKhfw92Wz2J68zLE94u/MO7gXrN8TrTHBz2SwfJzHXafro5+5jhYNKX5R9WEusmiq6KzQkEjOYTs+wIsGcddiTAE2RbWFmHM1BCX6HisGBQ4hHJ6tZSgGSpqG1vYMt2RAK10GSpD2Sw3HnQ1+/9zevZ4DnHdzV6y6KR+rqGXML+XyVWf7on9wLN61nzJrdbGU7q+rDa7O5bB6T0SiTEa1uf1vr6csFUqV8lvvSOi/KhQyGjh9FKpmoWoODgHe53Fi1dj1WrV4DWs6Xlumlfw766nDQumaPSU7X3Q9+5Yv7X48gzzu4K9est8AtFgoIBHmeS/8+8pkvmQ1yvKJjLZ5pBlS0StvkVBQz6fTc3f7WOo/VdVkCK58YQ71fQtCtMoaODB5jdV17gBQOR9DTv5hNPrR3LoLb464AKjlAK6vbAZYgaQ5J+gnc+le+ee+90dcTyPMO7orV6+LhSB1jbrlcqjLLH/r0l1i0LFZ0s5a91TQkkilMTEWZhFiVq1r9w5WKjD2QIpbqhThawy6UchmMjgwinZ6pUo8cDgfa2juwdPlKtHV0gn4mZvKNKxJo6ehgC4JWgVrDYkmScpLD8aBbLXz3a1/7WuH1APK8g7t85Zp4yARXUeSqYv0f3fEFuFgPVWXREYqAJ6Ixtp6xaC19Of9K60JlE2MIuxQEnBrisSgmxoeZ7xRWgs7h9nrQ0NCECy/eBJ/PB4fkYMDS7iQCYPqaTCRQLpXQ0Nw8K8AM9IrZHpck3OeQ8z/dunXrObMp42w327yDu3TF6ngozJmrqootWgY+8Mm7mc+lVGg6OYPxySjytqXlZ/OvdqCJpWo2hsaAA6VcGmPjo8hlM1XqEX0g1qclKygW8+jpW4INmy41QTXBZSBXA0zg0drN/kAAwVB4dhabAPMLKb0IA3c+8OW7/vtcZfG8g7tk+ap4MBRh4FJOaY+W3/vxu5ArlDA2MVUN6gmluUoRnViaSYwh6CjDCwWJ6TimJidgCJaa6hGtUEf+knYfoUkCJzHU6UR3Tx/WXrSxGlz6mwkwmWfOZh5QUU49NjKE5pZWVnsWwZUItsRXG6CPSbp+9/3nYNA17+D2L10ZD4bCDFwSBkRARY509eU3AU63JUScEPVa3Q4AsbScmkS9Fyjm0piITqCQy1vrTwiFihYHJfNPOavD4WSbPnGwnKCl8ju7erB67TrmYwWIVV/NyFj8ToCWz2URj8XQ2d3NFkezmWV2E9QcmgH8xJCUcyromldwN119dX9sIro/EAiyJWvoIthFjCUbroWXVYkqraXV/tVAKjoGr16AR5KZNh2P0z4FQm40d+miFcslHaV8nkXVgqUCUPbVZC4FUCtWrq7ysdXgmsAJM10D3HQ8xqYBW1rbuamuMs21GEs5SHjIpeS/cy4EXfMBrmPDpde8CZL0CYck3ZSIjjvEwmJ0IYIiFYKBCrjVMzmlYg6FxDjCbo2WkmfVpGKxWBXxinRGKZdRlkuzspSDyhnLvzrR2tbGlvC1TO9cDDZBo8fVHrRu5dO//Q0uv/o6C+CX8bPnRNB1xuCu2by5zWU4PwI4b3dIEtvFknxebGocPnMBbFrZnMyyqH8u2XgtPGZ9l8zqzNQYnGoOLrWImZkkkqmUuS+QuZceDA6S5MTMTIwNyJ6MpXbG0orrBHJTUwt6+vqqTPLcJrqS5xJ4M9PTeOrxX2N8lOq4Gj7xuS9YQscspnkWvF/boOu0wV170WXXGIyleIckSW4OKgUoPPmPTo3C6+ULiXncbgRCZrHeMLB443Xs99nYGIIuGflMBolkkilRQqIUqYzkcAOGxKbeqXsjl0pU+dLZWMqANxkr/G5jYxM6unhueyrspcfseWEH9u7aARJhhEsgkeTjf3J3le891ShZgvEr6MZdZzvoOiVwF2/cWOcp4wMOh/MTkkNaJVjKAg0TVK7sODA1MQKv18c+N00X2M1yZ9ciOHUFM+kUMtk83yLc0oZp7w8JDpfbWpeZZxyA2+VGLjPNgTN96WwstQMeCoVRV1ePYChkBlncX84FMAVQ23/3W4yPjbCXFRtR0Vc679JVq3HNdTdWJMpZzPfLgM2CLpeCr27devdZqTKdFNylqzZucDj0T0iS4z2SJAVrWTrbz5MTI0yFosPv99nMMtiFpfmeSpsKL/MQrLQvkJdNI3C50P7G6HmZ1HSVL52NpdQIEA6HEQ6H2KgoD35qo+QKyGRxjh46iAP79qBMkwkEqrmYJ1WIwqEINl56OfqXLKsKpuxp0amyVzwuMR17ZuTY4Gcf++U/7zzd557u408At69vi88TzL4L0D8JSJvECatSAZsZrmXxxNgQyw/pIOZQt6OYpamoR9SqwneQpqV5HU4XA4LSGL6Sa+VtsQ2KYTDhnwIk4UsFS2nPIV8giGAwwHz9bOkOdxsVkClt2rPrecSnJtlrWabX1MAX9fZh0+VXm6oWdzu1RYVZ8t05r72qqdmRweHdk1MT3bqmL5Ykx9uf/PW//eJ0wTrdx1tXcdWqC5dpDufHAf2PAKmx9kQ1Ehz/sDUgkyJE265RIENHQ2MT87sMVPqPrWuhmotqc2bVmkna9pRWvBE7T9N5SPyfmebgCl9KYykk/vu8fjhdTjOPrTa9tecfHx7CkcMHocilCqi0xL2usV1Q1qzfgP6ly04QLmYTMk6eEvGrl8lkjwwdHYimc5kNAKxFp88auGsvvvL6cqnwBRh4Q401rMLXbopqWazKMgqFPCvEq2yFGD58RR2ubreb7fBBoILYQwCZ+WIty+xRrJsi7VDQNNUypuNx9lwy+RRgkR+e3YdWA0wS6OH9+8znm/vSm6aXbhqq41548WYEA0F204mqEC8i1P5cw+JZ/K5uGPLE+NjO0ZGRkKqo62Zj21kD9+4vP/CrZ7Zt88ei0StpV++5qF8rv9lZ29HZxoKoYwPHWVWHDrlcZGaNWV8KlWyAchD5xZvTjJqsJrNOgRnN11JqZT1+luda53U4kIhFMTx0jNWOKVDjLoGvPkemfenKVSz/5Z9rllLfiVWhOYsK9AlLpfLEsWMDR5LTiQtgoOVkJvSsgXvf/Q89CQnXTCcSh5968reqoigXnAzg2Xxva0sz+pYsZd2Cx44exlQ0yvYqqD1OjFRnB3jOPHQWsd9+g1C1iWq4mUyS7WotACWtmRgcqW/AmvUXsQheuBWrzFcL8El+tlwUYCSmE7sHjx1XyuXyxScjB8mk1LrLbvWz5XMFuPSihmHoe/e8+PThQ4cuBBCZze/O5nu9Hg+WrVjOxjPZXVwsYuDoUbZzJW9I58eJ7K1UZ2pZPDvA1ZGuuFmyqRTb2Zr8Ov1O7CzGd0bRWfFARLyCpVYKZ4JYSenmDp6E79U0LT02MrInGo326rreNxcZyJcnEzEkopO44uprMT2Tfu3AFW+yWCzGnnj88YFcJnu5/Y1XmebaiFmSEAmH0Nm9yBLWU6kkRoaHWceFOE7qJ2tM7ckYTDdNdGoCxTz5eq+VwhCYskx15ACWr1xtle94SsTdw5mytpDNHhoaGYnnc7mNAKo3b7BdKOqpno5OIhGfYjVmOq678ZZzA1zxPkeHh3c9t/25Fl3Xe+zgzB1cSSxvrW+og9ndyp4WnRhn9VsisZ29zMRbEbMtELKBXAtwqVDAzEycbVPOtjE30xe2/qMio7WtHT39SyxfWgVoLUvnYK2dxYBRjsViO6cmp+o0VV1zMl+az2eRjEWRTiehq3wXMXGcc+DSG9M0rbT9mWe2j4+NE4s9p5IS0UXXVRk0eCBWSqfZn8mxURTLZaYVz60WmSDbAKa9/TKpJFRVhs9HC4XyKhGZXarYuBxOBmgoTEV2UzWzWMrNbAVkHjzNaZZNwGVZHpsYHxvIZDLrYOCE1FCARukdbc6cmo6xjIFuMhqFEYylfJzy8CXLVsDh4m7rNfG5J7srU+nU8acefyJTLqKbE1kAABnESURBVMsXWgm9LbkX8mOV76KdRwjkphYW6dJRLhURi0UhnQLApCuXcjl4KO91Ub5MfcU8L6XzhCMN6Fy0iIkfs4Fay9qTsph/FiOTSu2amooaiiKT6T2xRGReJCrqZ9NJZFI0OipzUNlmGRxcCuiC4QgaGltQ11B9b5w1cO/5+reeBKRrTgas/W+HDh54+uD+g6sBNL6sHGnqzTSLoyky/5BmvTSbSaGQL8JlyoSWiXY6UC7mmUZF7S52VUuWS2wHkbbOToTCETM1seeiZ8ZaXddnEtHY3pl0qh+GYbmg2a6JXC6D3nuRWn5UtYqpZEkI1EAogubWthP2VKoElmdJofriV7/xpAGcMrj0BmVZntm+bdu+dDpzpUSHmbPOHqxUEv8yWwtKZ7tp0kHApVNJSA4XnA6J3fmhcJCNeVZML63VmGcyZVtHFzfnZDrNEqMlNth+PiF4qg2mzJ+LxdKBRCyaLPE0hlc7ZjnIc9J7L+SyzGIIsyuYStE5WY9guI6BSgCf7DhrzL3zvq8/idMEV7zxeCy6d8+uFwKabiw9gcUma2urRvQzzRCR2iQ0aLlcQkMjN13C9CpyGaVSEfUNTQiGwxVATRD5eU+mKJ3IYjLLlKml06mdqZlko66DLNCcB92IVFCgjg9FUxhLLfNrrlZHMmmkrh71fDzqlI6zBu7nvvTVMwaXgyEp+/e9tG1qYmKTJEmBWr1ZiO48RzQBkSTmO6cTUWaWicEtra3say6bZooSBWPEAAbgSVg6K4vtKY/JUk1RRxLJxGC5WFoHCQ3VdadqTJhPp63MiaUmoPQ7+p7vJiqzsRgaZhQB4ymhCsQB4696+hb/NhQMLi97jL/564ceyp7ic0/7YdJn7rrvScA4LbM826sUi4WxPS/snpRl5ZITgysOai2LCTRqm0kkYgiFQwgEQqznypIELZZWhIUTXYDt3LYImV4LDkkv5nO7UjMpSdU0CpCqO6QYkSsVKMPgO12rCu3jZ2MpGwqnLVdlVmBoammzAsRTvOLPODyenyzu7fMVi4VPxafGVyfjMbR2dOY7FvX9eWPA9e1vf/vb1P03r4d0x59+8bR97sneweT4xPbBwUFSbdqrWGxjbS2La3+upC4V1lpm+OVY7CCroCdTM6mXivncEh3otheHOZS2SqfEc28KhmojXvqZfCwBS0sLU4O7dXvU3BhVZ+W3UN6A9LOmlub/bKxvuFZVlQ/s3L4trJQKLNqnm5hy8oA/gI7eJUmv3/tn5YDnL388j9MM0u2fveuHEvCx+bxlNE3LHTl0aFcum7tSckjO2Vg7G4urclErNz05a+1muVwu7UvPpNKKIlOAxIvK1kEozmaMJVairAaXctcUcxOhSB0DogJe9Y1hP7/5l8NOh/PHi/p6M3K5dPt0bOqS6OQ4K0vGYgkkE3G84YYboKsK/MEwvP4gMpkUktMJdHb3pLt6++53KcUfPPzww8VXigl7Px/91OduMyTpERjoeKUntD8/l8sdHKCty3V9lfCd88FaO4shGYVcLrsrl8mSkrayQqgTm0z43078Pfl2AleVy0ilZthD6hqabKZ37hvDNAKaA8YvA3X1/9La0rIWhvThPTu3NyvlIjQC0R9AS1s7/D4fSorC2mT9wRBe3PU8cmzBFo1V1do7OhCO1GHR4uVRj8f7zbDH+PHWrVup+HxGh/VJ3/vpT0c8Cr4BSJ88WfJ+Bq+iT0xMPp1MJC6SHI5wpQpTWxsVuq9dUZqbtZqmDqVnUsNluXAhINVxZs3NqmqzKT4FfzxpwflshqUzVDmiG7H2mOPGmJIcxl91dPYMGrrxgVQydnUiNiVRpA/JidGRYVx40QZEQgF4fQG4/UFk02lEJ8fgdLmZ7l4o5LDl2uuYDuALhFDX2MRSQ5pSbG3vjDW0tHw97NT/19atW+XTvfYn3Mbv/9gdFzt040cGQN0D83YoihIdGxo5LmvKZa+AxVqxkN+Zy6TdmqZdZNHQ/BTVzTnmWz+Fv1EN2uPm0qDN/lb9YJ2bf/OUx+/9WXt7d6dTcnx4dPh49/DgAIJ+P2skoFGUgN/sAPWHUd/YiL27d6GQy7BmBmo4oKnDYDCIbKGArq5uZinGx0YxNnycqV50UGlyyfIV6Fu6Ytztdj+Qirb95Mc//hgvmJ/CMWuD3K233ur0RhrvMAzpfgBccZinI5vJ7EzE4m2GJC2yWGwLtk4Ipihtgh7PpdP7S8XCcgPonO2t0PNmP05iUukJpwC++ZAcDPxdY3PbC+Fw+GbJgT+QHA4XvW6pUMS+vbtQzGWxfv06uL1+eHx+5LI5xKITkEslNrY6PHgcl11xJfxeNzxeP0J1DazbMzY5zpoItm97CjQ/fMEFa+AP+NmNEI7Uo62rh5lxSZKGHZLzgWRn49/++GMvD/JcV4Rdp1s/8PEuh6F9T5Lwh/OELTuNYRjFRDz+XLFUvEKSHKz3ebaIWZHLe7OZVE5V1YsloEKtGhpZGM3y++q/zf5xX+bGOOByuf6mvaPHZWjKRw0Y/V6/f1Ytu1SglQT8GBsdwfjIEJwSV65a2zoQCoWYOucLRtDY1Izp6STGR44hNc3XJaPmvvbOTszMpNDT08OYXNfYzHrJanu4HJI0CMl5v0cv/N3WrVt5u+gsx0nBFY+/9X1//CbdMP6nBMxZmD4T8BVFOZacTuQNA+sqZUTkC7ncC/l8rg3Ql4vzzpbCVP5W8zGqfqzyxLZwucaIV98YKgz8a6Sx8clIuP6yXDr5rnRq2p3PplkETWpUV89itkrAiX1WDlAd+8VdzzGjsOaC1Uyo8YfqWFVoOjaFQj6LaDTKRkbXX7gBrW0t0BQFAeq1bmpBmBg9W/tPrSLndAw4JOn+Q8v6/uHnt93GC8e245TApce/5S23B1zB0lcA/CkA95mAOcdzKNzdlslk6nO5dFIply+qcgX0Ic0uDhbVairrtLDnNdUf4gQ7a1re2YMtO/QSMCG5nX/T0tKZliS8Xy4V14wMDyI9k0RzcxNoYTwSW0gHd7q88Eco+JpDRHFItJ8uY6wsKzh6aB9ymRSrdzOdvL2DFz6cbpbvhusbWTOhJeBwqZSNz5ystZZbPRzRga+7lMI/2gfCTxlcAcyb3vX+NU5d/yGAK+YRYBw/fPBZWSlfNlsmSnd+fUMLwpEwa3SfmhjHDC1gYh5zmlXzxjjxfVYSXh4F44lAIPxv9Q2Ny7PZzAeLubSfgh9iKb02rUXpcjrQ39cHp9sHF3V50hLA0wnWLE8mtLWji0mS9u5JUcCgFqBnnnqC5csXb9zIblDKb8nnBiP1HECTlZSSxSfHMT46zFp0unr6sHTFakTqGqrOTT1hY0ODrOm/q6dXfMSDBrDVpeR/TiCfNrjiet7yjvf8sWQYD1Lpbz5AHjx66FlZLl9WNWrAmtaDfAxU54zt6e1HY1MTnnnqcbb8QrU1PfHjmODN1rWbgST9fXNz+5DT4/rDUi67maLmvXt2oq2tA93dXSy4IVAlGmPxBuF0uZgmfnDfbkDXaDyByZHNzS1s0+dQQwtcbm91O4+pbVNB5PjRI+js7EQgXHcCS8kMp2aS+N0T/4VgwM/UsvaOTkQidSBZdPHKdaybNJGI4/iRg5gYG2GPIZ9Oa30sX72WCS7msT83k7rrTMFl53jjG29t0d3StyUYH3ilAA8OHHpWIXBt4avTTbNGYXQtX4fCutuhJ44i8es/w7U33IznnnmKrWVxBrntXo/X9/PGptamQin/R3I+W0+1WWIplRPrG5swOT6B1ReshuT0wGHuYJahwvzMNMu+KOhJxKZw9ZZr4XI44PJ44PEF4fYFeIOersHt8tiYdmrdIJQf797xHEubbrjxRgYcBVWhSD0S8RgK+Rz27d3DzP2q1RegpbkFqlJmN1h7dy+aWtsxdGxgz9NP/qaYSiW1VwSuAPT6N79tCyD9UDKw4kxBHjl2+NmyLF9Web6ESFMrnNDRfNtf4uEPXoTb/3ECiR/ejLe+45147Jf/ilKxdlGZan9rC5lkhyT9S7Chca/fE7heLuev1TRVGjh6mPnA/v7FaG5uhsfthEEChsMNyUlThsDAkQNMYKAhClKRKNINBAJsRXYqyvsDYTjYCAyQmUliOj6F9Axf87Kzp5+ECNvYZ02T3hw9XbTKDpNRHE4cObAXk+OjFkvbu7rZ+yJz3NbWhsbWdrIo6Z3bt+05sPfFblVVyJL+raIoj84LuPQ+br31Vk8iU/4CgHtOVvieC/yRoSPPKuUKuOS7Orr6IZfyaLrlK1C6Lkfisfux3DfFZm5//dgvZ1u+QHgNEW+NOl2en9U1NzlVRX9fOZdqV2VaZtBgQUokUo9cIY+G+kaEIxEYEpchc9kUcmnePkNmdmJ8DIuXLEVbSxMLgJweH1xuHyShSasKsyQkOricEnt/kboIBToI1TXDH4qccg8XvT5p0ZT70g1EexD39S/BihXLmZRJAkhDcxvz8fFY9MD2p5+YjsdiGw3DOGjo+g8CgcA/jo2NMV163sAVoG256a1LdV37AQzccDosHhk88qyqVDO3b+lKNkhGA920q9cFa9ejb/FiPPFf/8GE9jn8LYXS/x0K1W/zhUIbNbl0i1IuOWkbmpGhY+jqWoTFSxbD66GeLAmaIUGXnIwZ5PMmRocQiYRBvdgNTU0IBripLasSbxpwcpbmqSkuGTfVJANOtwdTU1PYcNEGNutEAZMvGGYBGVWWqGBArCe/aEXYtrozQbF3907MJKZYaZFeh6lYgQAbd+1fshgNTa00slM4sPfFXftfeqFJluV+wzD+Sde0H0xPT++ovd7zDq54gSuvu/k9hoHvUunvVEAeGzr6rEJm2faOqD12+aq1LP0gVtAw2M7nt7Gm91ny3pTD5fw/4brWtNvpfGdyOrrE4+QTfHQxSZCncySmk+jo7ISmS0wVKhayKOYyoG4Qmjak9bBoVveySzczsyg5PMxEE0tpNqZUzGPw2FFks2k0NDSwf5FIhPleihHcviB8gQB7TRbVxydZdyQdNEvVt3gJ2jp7WHBmb5AvFgt4/D8fY1nAlVddzVhPTYGRhmbUN7eglM8d3/X8c6OTk+PrASNuAD8su93/Oz0ywrXKWY5XDVx6rS1bttSXNNc3IbGS4pydhPTYiaGBZ2WLuZQ78nfr8/vR2NwCTVYQjU7NIhdit88f+Y9AKLTE0NS3q0rJTWMbZEqpa2LDxosRCgZYpE27iSk6WEGemHpg7wusvSccCjL9l4bByKyWFMDjJ4C4j6RAJpua5mVAWjPS7WHKEQ23Le7vhdvjZ8EUsZduEirEU7F/z87nGdCrVq1mDfuGrrHzhuqaGOA0A0VsFJ0mFDGPjYzA63GioamFAiVl6PjAzv0v7faVi6W1hoF/16D/IDYxQWtfVZqiXwtwxWtuvPLazQ4dlBvTmMqsx/jIsSqzfJIUhp5flhyOfw3XNY+4Pd6bUsnEepfTgJvSFklCMBRhbKcV1ZubmlmQRNouFcppcRUq7XEm+dlyRGvWrmGjMDoooOI91RRoEai0xOHe3TvQ3tGFttZW5kvdNDIqOeDyhZlKRa9J62ck45NcqKBze7xoaW3DTCqFzi5Kq+qgGkB8apyNl1CeTMei3n70LF7G9oIQ/dTFYnH8wN4XjkyMj63WWaHZ+CtA//H4+PjYqVhB8ZhXlbn2N0LFiIHR2Gclw9gKIFT7JidGBbhzyYX0DGnI4/H/30C4vh7Qb4Mm+8nsFosltvDYilWr0dXZziYbSrKKssy3rtE1BSODx6HrKouKabQ0FAwykFRdgqyCm0kHFQGoyzHN/rHNKiAxWXBsbBSbLrmESYhkfknwp3acdDLBTHU6k8Hw8QG2AmxnZwdzB9QA6PWHQSaXbpQjhw8xxi5dvgytLa3WKCuZ3khDkx6dnNh16OBerZDNXwwYv9MM/dH2lpZf7Nq165QrQfbretbAFS+65pKrFzkN9fuA9Db7G5kcHXxWVSnPrZ2rh+FwSL8O1TXtd7m9W4rFwoZSPsPMHJluyoNp0oCku+RMGl5/gLFUpjZatcQqK3RQ/ZQW5I6Ew0xIoPElCqZ4WE2g5phydOjASwzo3t5eJjd63S72d8nlY8DSDUABz8jxo1BlPodMrCchg5ZootdobW2D5PJgcmwYM4kYmzCko4nci6azNKm1rZWJGU6Xe3rgyKG9k6NjS3RDrTMM/afQ9UeHh4cPng5LZ3vsWQdXvInVF136Vgn4CwCsCTw2PshEDJuUmHR5fP9SV98YgIS3GaocIEWI1s+gvQ5od83NmzcxlhZKMoolha2nQWMsJYqMB4+iqaUVvT29rG7qcbuYjFiQNVpWhYFEvjefmYFcypksBerqG1mgRfXYcF094HBBMjXtbHoG9I+WfCDN2eXyYPPmzTT9C6fbDbc3wN4f9WKTnrxz+za0d3Zh5coVLOCim4Raa8INTUjPpF4cOHo4W8hlLzEM4wB0PFoo+H4Wje6dt0a51wxcAnTdunVBGe6vwZD+ZHpqZIfCA6odi3r7/13RnVeVy6U3jA8PSPX1DWior2NTBiE2be/G6GSc+bWyrILaWRzg5pexlBrEQxGQi1q7di3KCm0Hx5fHJ42COi7lcoEt0z8+Nozu7h709fXB66V6CIMKuoMm93lRYODwfjgMPthFFoLGYwLBAOKJaSxa1MsYzfqg4lFQ5YgO6ujo6OzG8PAwli5ZAl8wBKfHm50YGdk1MTHaoatarwH955ru+MHQwMHtr5Sl5xRz7W9mxZoN62YSE39QKhT+I5PJ7PjyAw9+UtWMO5/bvj1/+MC+NYnoOGeI5GALg+aLZZbQQ6e1mQ1MjI+ynHXJkiVobGyEz+th+yjkiwrbaUyI+alEDJKhMnmQjlAowiLfTDaD3t4+aCygp8lBnXVNUHAkfDrVaC+97HIEA1QccDG/KyuUG8eZ36WeZqpatba3M0tBZ6IF1UjAKBaKh8ZGjk9lM9mLDRhR6PqPnJLx14cOHZp+NUA96wHV6XyI++5/6NOQ8H16TqGY3/27J55qzWRSXQQgXXQC1evhIxukq9KaU9RETr6PKjPFMi8yEKi6IkORi5YppUh4/foLEQz6mS5Nvlc1uMkk1k6Oj7BFRcmM08o6pDWHqAuCzLgmgQr1lBLxQIrLn8yyNDaxNIpAJ53Z5fWVpuOJHbHoWERV1DWGYfw/SPqjh/fv/89TSWNO53rN9djX1CzP9abuu//Bt0KS/skmYyrRyeiOZ5/Ztj42NR6cjk0wk7d8+TJWLiOfS/+ISWKsJTOTYKbaLIsyLZYqLJlsDvUNDdz0mguM0uBZMZ+BUi6B6kyxaBRt7e1Yurif2XHD4UapWAIVDzibeRBFqQ75ZrovXGauq6nGUHRqfDCXTq/VYbCFxRy6/KMDBw7w1cvO4nFOgkuf/55vPNzhNOQvGpBut0A2MHP40MFDe3bv3qwrZQfN6BTLZpZAn0SVoallJjTQ5si0l+DyFSvR0UErrgKyokNWxQZTBptFGjl+BPX1tF6WiwVT5NMpRcoWFDZlWCgUMDo0AI9LLL/UjPr6Or4GpYvrzA6XRy1kczvi8ahTU5WLYRhPazAeDbgd/3ymacx83APnLLjiw9391Qc7JahfhITbYfBGc03Tju18fkdxYnx8DTGV2JTPpljQ5Xa7LKmRFiCjdSgCwTBoOznKeij4kot5thYVyY0UYY+PjuLa665lfluHg90YZP6ZC5CcrIaay2WwZcu13DI4PRQcUaQ+mZqZPpjP5lbo0COGrv+dbjh+cODFHefEbibnPLgC5M997t4uzSV9CcBHxDRBoVja+cKO5zvSqZmueHScmeBNmy6BomiM0SRiUISsURSt6zh+7DDzz+FQgPlJ+p4YWyjTwmcuZqaPHnwJAb8PTqfE/l5X3wCf14tUNscGvxxON23/tiudTpVVRaZc7KChG48q5dzfHzhwgO8Vd44crxtwxfX6yKfv7pYM7UuAQSBTR6QynZx57sjBgxcqcilEXYSaOX2vKWXoSsmKjqndNJ/NoqOT5MAQFI2tH8Ua1sQefuRzJ8fHmCZNkTFVjCg6NuBKFgq5F0uFQo8OfZFh4Ocw9Ef3UDJ7jh6vO3DFdXz3hz65yOUwiMl/TCAbMKZj41OHJ6YmL6Vx8NjUGFOHSETo6uxka0NSYxvlvNlCmeXEtKsJjWlS4YDSF2Kp3+eFQYqVojPtWdP1veViPqkq6ibD0GPQ8SNddfxk9+7fxc9RTK239boFV3yCW299f4/mct4jAR8ikHXdODo5MV7M5/PraERE18pMSiRQafs5kgz52o8kdnBTTP3ES5csZmVAYq4OR05T5Z2qojRrurHaMIxfGZrx6K7nf/cr2obhXAdVvL/XPbjig9zyjnf0Grr7HgkGgexWVfX5eCLRqataNwVBtLz+8SMHmL67qLsbISrIu2ltZyBfUljkC0hHDF0b03Rtg2EYCnTjr6matX37k0OvF0Dt73PBgCs+1Jab39bnMLR7DQMfpE1TVUXens8XNlDHC4kOtGTwxg0bmM5Ma40aEsoOh+N5AwatgbQBhv6MAenRTKLx5wcO/Py0h6/OpZtgwYErLu6mq2/sd+jGvYZkfJC2U9B17bCu6ZfzxVhpXSrniNvlPCJJ0lrDMII6jL/XNf3R5373m73nEkCv5L0sWHDFRVl78ZWLAf1eCRK13x7zetxjfr8/YACUxhyiNMZQvD/dtu2Xr9raFK8EoFfy3AUPrrg4S9dsXOIwjPuCoWB3JBJKGJr06FOPP/bUK7l45/pzf2/AtYDYssWFJ5+cczLuXAfsdN7f/wfvVE4m+Gp+kAAAAABJRU5ErkJggg=="/><path d="M 845.33 302.4 C 815.12 302.4 794 277.79 794 251.59 C 794 220.27 819.22 200 845.71 200 C 871.22 200 896.4 220.93 896.4 251.18 C 896.4 278.28 874.84 302.4 845.33 302.4 Z" fill="#0d2636" stroke="none" pointer-events="all"/><path d="M 834.25 291.19 C 834.25 293.4 832.57 294.32 830.06 293.46 C 814.91 288.15 800.34 271.75 800.34 251.27 C 800.34 223.57 824.03 206.1 844.57 206.1 C 871.22 206.1 890.18 227.94 890.18 251 C 890.18 270.03 877.94 287.54 859.59 293.69 C 857.52 294.24 856.23 293.13 856.23 291.31 L 856.23 277.98 C 856.23 275.4 855.18 272.65 853.24 270.74 C 860.69 269.89 865.21 268.02 868.67 264.46 C 872.07 261.08 873.6 256.13 873.88 250.01 C 874.07 245.15 872.77 240.41 869.25 236.8 C 870.48 233.82 870.69 229.86 868.83 224.97 C 865.14 224.69 860.94 226.9 856.64 229.56 C 849.08 227.59 841.52 227.33 833.96 229.67 C 830.58 227.47 827.51 225 821.65 224.97 C 820.1 229.29 819.86 233.23 821.19 236.72 C 817 241.37 816.52 245.93 816.6 250.47 C 817.06 259.25 820.27 263.68 823.83 266.33 C 826.79 268.52 830.94 269.9 837.27 270.83 C 835.57 272.51 834.62 274.51 834.46 276.86 C 830.74 278.56 825.42 279.41 821.78 274.25 C 820.15 271.66 817.93 268.73 813.72 268.74 C 813.03 268.72 812.35 268.98 812.25 269.28 C 812.15 269.61 812.54 270.3 813.01 270.57 C 816.7 272.92 817.29 274.23 818.8 277.44 C 820.2 281.19 822.62 282.63 825.24 283.64 C 827.92 284.59 832.25 284.32 834.25 283.64 Z" fill="#ffffff" stroke="none" pointer-events="all"/><path d="M 845.2 193.63 L 845.2 86.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 845.2 198.88 L 841.7 191.88 L 845.2 193.63 L 848.7 191.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 845.2 81.12 L 848.7 88.12 L 845.2 86.37 L 841.7 88.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="1060" y="10" width="200" height="60" fill="#ffffff" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 40px; margin-left: 1061px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; background-color: white; white-space: normal; word-wrap: normal; ">Clients Supported:<br />Chrome, Firefox<br />Desktop Only</div></div></div></foreignObject><text x="1160" y="44" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Clients Supported:...</text></switch></g><rect x="1060" y="206.2" width="200" height="90" fill="#ffffff" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 251px; margin-left: 1061px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><span>https://config.qmk.fm</span><br /><span>Single Page Site<br /></span>JavaScript/VUE<br />Source: qmk/qmk_configurator<br /><span>Host: Github Pages</span></div></div></div></foreignObject><text x="1160" y="255" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">https://config.qmk.fm...</text></switch></g><path d="M 896.4 251.2 L 1060 251.2" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 880 457.9 L 1060 457.9" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 833.22 495.8 C 828.16 495.8 821.72 491.64 821.72 483.75 L 821.72 475.34 L 813.15 475.34 C 811.65 475.34 810 474.49 810.03 471.92 L 810.03 455.36 C 810.03 453.81 810.93 452.17 812.91 452.12 L 821.72 452.12 L 821.72 431.37 C 821.72 425.69 826.62 420 833.69 420 L 856.49 420 C 858.53 420 861.18 421.45 863.72 423.93 L 876.39 436.67 C 879.49 440.04 880 441.77 880 443.93 L 880 484.09 C 880 490.1 875.34 495.8 867.72 495.8 Z" fill="#000000" stroke="none" pointer-events="all"/><path d="M 850.47 469.58 L 850.47 457.06 L 854.43 457.06 L 858.82 463.99 L 858.82 457.06 L 861.89 457.06 L 861.89 469.58 L 858.67 469.58 L 853.58 461.29 L 853.58 469.58 Z M 844.7 463.4 C 844.69 461.89 844.28 459.4 841.65 459.33 C 839.7 459.3 838.71 461.33 838.71 463.26 C 838.77 466.2 840.13 467.37 841.74 467.37 C 843.53 467.33 844.68 465.87 844.7 463.4 Z M 835.26 462.55 C 835.34 459.28 837.91 457.1 840.4 456.87 C 843.13 456.63 844.5 457.13 845.74 457.91 C 847.41 459.11 848.53 461.32 848.06 464.79 C 847.61 467.23 846.07 469.6 842.36 469.85 C 841 469.92 838.36 469.99 836.56 467.58 C 835.73 466.38 835.22 465.51 835.26 462.55 Z M 823.19 465.77 L 823.65 465.72 C 825.75 467.29 827.29 467.4 828.78 467.35 C 829.66 467.23 830.41 467.01 830.47 466.24 C 830.51 465.69 829.93 465.31 829.36 465.17 C 827.6 464.71 826.16 464.86 824.34 463.46 C 822.89 462.1 822.96 460.46 823.66 459.16 C 824.9 457.24 827.05 456.94 828.36 456.83 C 830.57 456.81 832.33 457.19 833.44 457.73 L 833.43 460.67 L 832.94 460.71 C 831.93 459.92 830.82 459.41 829.27 459.32 C 828.41 459.31 827.38 459.3 826.76 460 C 826.43 461.17 827.29 461.25 828.04 461.42 C 830.02 461.87 831.13 461.99 832.65 462.95 C 834.58 464.43 833.97 466.96 832.96 468.1 C 831.63 469.39 830.35 469.86 827.92 469.85 C 826.52 469.83 824.81 469.63 823.17 468.83 Z M 813.29 466.83 C 814.07 467.09 814.63 467.45 816.44 467.23 C 817.09 467.05 817.76 466.56 817.76 465.57 L 817.76 459.51 L 814.91 459.51 L 814.91 457.06 L 821.13 457.06 L 821.13 466.31 C 820.87 468.24 819.78 469.26 818.09 469.59 C 816.91 469.84 815.53 469.98 813.29 469.57 Z M 827.52 475.34 L 862.48 475.34 C 864.3 475.34 865.44 473.93 865.44 472.17 L 865.44 455.09 C 865.44 453.39 864.22 452.12 862.32 452.12 L 827.52 452.12 L 827.52 431.76 C 827.52 427.61 830.96 425.79 833.33 425.79 L 854.21 425.79 C 856.33 425.79 856.7 428.23 856.7 429.52 L 856.71 440.31 C 856.71 442.3 858.38 443.31 859.64 443.31 L 870.53 443.31 C 872.02 443.31 874.24 443.77 874.24 446.39 L 874.24 483.83 C 874.24 487.16 872.07 489.95 868.16 489.95 L 833.53 489.95 C 830.7 489.95 827.52 487.95 827.52 483.92 Z" fill="#ffffff" stroke="none" pointer-events="all"/><rect x="1060" y="412.9" width="200" height="90" fill="#ffffff" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 458px; margin-left: 1061px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">https://keyboards.qmk.fm<br />Keyboard Metadata<br />Source: qmk/qmk_firmware<br />GH Action: Update API Data<br />Host: DigitalOcean Spaces</div></div></div></foreignObject><text x="1160" y="462" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">https://keyboards.qmk.fm...</text></switch></g><path d="M 845.04 420 L 845.14 308.77" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 845.15 303.52 L 848.64 310.52 L 845.14 308.77 L 841.64 310.51 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 905 630 L 1060 630" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 815 610 C 791 610 785 630 804.2 634 C 785 642.8 806.6 662 822.2 654 C 833 670 869 670 881 654 C 905 654 905 638 890 630 C 905 614 881 598 860 606 C 845 594 821 594 815 610 Z" fill="#ffffff" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 630px; margin-left: 786px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">QMK API</div></div></div></foreignObject><text x="845" y="634" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">QMK API</text></switch></g><rect x="1060" y="595" width="200" height="70" fill="#ffffff" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 630px; margin-left: 1061px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">https://api.qmk.fm<br />RESTful API<br />Source: qmk/qmk_api<br />Host: Rancher on DO VM's</div></div></div></foreignObject><text x="1160" y="634" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">https://api.qmk.fm...</text></switch></g><path d="M 794 275.46 L 709.04 315.72 Q 700 320 700 330 L 700 570 Q 700 580 709.45 583.26 L 785.69 609.55" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 790.65 611.26 L 782.89 612.29 L 785.69 609.55 L 785.17 605.67 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 460 251.8 L 290 251.8" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 490 229 C 466 229 460 251.8 479.2 256.36 C 460 266.39 481.6 288.28 497.2 279.16 C 508 297.4 544 297.4 556 279.16 C 580 279.16 580 260.92 565 251.8 C 580 233.56 556 215.32 535 224.44 C 520 210.76 496 210.76 490 229 Z" fill="#ffffff" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 252px; margin-left: 461px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Digital Ocean<br />Spaces<br />(S3)</div></div></div></foreignObject><text x="520" y="255" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Digital Ocean...</text></switch></g><rect x="0" y="221.8" width="290" height="60" fill="#ffffff" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 288px; height: 1px; padding-top: 252px; margin-left: 1px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">https://qmk-api.nyc3.cdn.digitaloceanspaces.com<br />Space: qmk-api<br />Host: Digital Ocean</div></div></div></foreignObject><text x="145" y="255" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">https://qmk-api.nyc3.cdn.digitaloceanspaces.com...</text></switch></g><path d="M 580 251.8 L 787.63 251.31" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 792.88 251.3 L 785.89 254.81 L 787.63 251.31 L 785.87 247.81 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 875 790 L 1060 790" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 815 768 C 815 757.33 875 757.33 875 768 L 875 812 C 875 822.67 815 822.67 815 812 Z" fill="#ffffff" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 815 768 C 815 776 875 776 875 768 M 815 772 C 815 780 875 780 875 772 M 815 776 C 815 784 875 784 875 776" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 800px; margin-left: 816px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">RQ</div></div></div></foreignObject><text x="845" y="804" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">RQ</text></switch></g><rect x="1060" y="755" width="200" height="70" fill="#ffffff" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 790px; margin-left: 1061px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Redis / RQ<br />Job Queue<br />Source: qmk/qmk_redis<br />Host: Rancher on DO VM's</div></div></div></foreignObject><text x="1160" y="794" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Redis / RQ...</text></switch></g><path d="M 845 670 L 845 753.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 845 758.88 L 841.5 751.88 L 845 753.63 L 848.5 751.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="785" y="910" width="120" height="80" rx="12" ry="12" fill="#ffffff" stroke="#000000" pointer-events="all"/><rect x="787" y="912" width="116" height="76" rx="11.4" ry="11.4" fill="#ffffff" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 114px; height: 1px; padding-top: 950px; margin-left: 788px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">qmk_complier</div></div></div></foreignObject><text x="845" y="954" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">qmk_complier</text></switch></g><rect x="1060" y="915" width="200" height="70" fill="#ffffff" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 950px; margin-left: 1061px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">QMK Compiler<br />Job Runners<br />Source: qmk/qmk_compiler<br />Host: Rancher on DO VM's</div></div></div></foreignObject><text x="1160" y="954" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">QMK Compiler...</text></switch></g><path d="M 845 820 L 845 903.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 845 908.88 L 841.5 901.88 L 845 903.63 L 848.5 901.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 779.03 925.64 L 529.38 833.46 Q 520 830 520 820 L 520 303.77" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 783.95 927.46 L 776.17 928.32 L 779.03 925.64 L 778.6 921.75 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 520 298.52 L 523.5 305.52 L 520 303.77 L 516.5 305.52 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 905 950 L 1060 950" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Viewer does not support full SVG 1.1</text></a></switch></svg>
\ No newline at end of file +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1261px" height="991px" viewBox="-0.5 -0.5 1261 991" style="background-color: rgb(255, 255, 255);"><defs/><g><path d="M 885.2 40 L 1060 40" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><image x="804.7" y="-0.5" width="80" height="80" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHcAAAB8CAYAAABT/i9JAAAgAElEQVR4Xu19CbhdZXnuu/Y8n3k+OUPmhAyQQMJMQCZxqFpBvU7VKk6otQIq4BBBLVQF7a2ot/a2trW3j09br+3F1lZAJBBIQkLInJOcedjD2WfPwxrv8/3/+tdee+eckIRDCMcsnnCmvdfee73r/Yb3+77/l3D+OKMr0NbZ8xmfz/95p9PVkEonP5SMTf7zGZ3oVXyS9Cqee8GdurV10RKP3/tIMBS+0e3xegzDAP3TNA3pmcQTU+PD1wPQz5UPfh7cU0Cis6fvM35/6PPBcF0PXTACVNd19lWWy8hnZiBJBnKZ9NJ0On3sFE55Vh5yHtw5LnNbb29/wO3/fjBcd6PX5/MYugGdmGqCmkknIZcKcLlcYIDDQHomeR7cs3LbnuGL9PYvuSMQjNwVqqvvkSBxQA0dBG6pXER2ZpqB6XA5icKMvfSPvk+nzoN7hpf91Xtab29vv8cf/n64rv5Gnz9QxVLd0JFOJlAqFuBymyy1g0qcZdgayJwH99UD6XTP3L985R3BYPiu+vqmHkmqZmmxWEAqGWcG1+kklnIA6T9AgivYjIBHwkx8gjMYBO7MebN8uiDM5+N7e1f0B8OB74XrG28KBAMeXTdNq66zIGl6OoZSPgeX2819qQkcM71OP3zNfWjoXgU5n4YrN4TxwUOWWc6kz4M7n1id8rmWr1x9RzBSf2dDY0uvwyGBg0qAGigW8piOT7FzMZYyU8v/SZIL4dZeRDpWQPLVM4YSzvmZKbgZuAfNxwLZ8+CeMh6v+IG9K1b0hwOR7zU2Nt0UCIYqLDV0aJqORGwC+VwOHo+HvZYAlL66A/Vo6V2Ftv41cDg9KJZkZDIZ6Dx2QoHAzQ9h/LgJLgxk06nzZvkVo/YyJ1i5dv0ddZGGOxubW3slh8QiXcHSfD6H+NQEIJEvdVVFvJLkQF3HEnQsXofG1m4oGt0EGlRVR0kuI5PNmcETZ64nP4QxE1z6QzZzHtxXBdsVK9b1ByKB7zU1td4UDIc9PCel3FSHrumYmhhDPp+Bxy1YWvGnHn8EnUvXo2vxGji9PsZqTdVs4GoolRXkcjnOXBBzJ+HJD2Ps+AGL8edFjHmG9oILN3yqvr7xrpbW9l7J4aiw1CDFKIPo5Djzky6nqyo4oui4qXMpelduQFP7IqgalxFVk6nse12HqumMucVSGYVCocLc1CS8BO4xE1ycV6jmBdoV69b1RwJ1jzS3tt0citR5hMggWDoxNoxsJgOP12ulKcKf+gIRBmjv8rVwewMWeKqucoBVjTGXg0xgc/9cKJVQKpUrPtcEd/TYfitNymXPy49nDPCFGzZ/qr6p8a7Wts5eh5OzVChImVQKk+OjjKXXfOh+/Oaf/hKeUtxMU4C23mVYesElaOvuhaYbjI0MQAaiyVrxO12DRt/rOjSFMziXL0BRVM5cGCikphhzCVyhUOWymfMB1emgu27duv5AXdMjbe0dN4cZSyu+VFNVjA4PIZtJw+PzWcHRRW//LJ79xU8QCRhYdsElWLZ6A9xeP2MisdAeKHHTq3K2EqCqDk3nQRQBr+k6FFVDPl9gj+HRsoFiagqewjDGBji49F/+PLinBu2GzZd9qqGp5c6Oju4+J7HUVolJzyQxOjrMzCEJ99zkckaR8NDRuwyrL7wUnT39jKUc0IqJJbAoyJJNs0vfMxNMTNU0BiYPqkyfq2nI5nLs7OK1BLijA/vMmwrI584zd050N27c2BOINP5FW0fXTXX1DV6RvtBXYung8WPIpNPw2ljK5EDDgD8QxqqLLsXqdRvgDQQ5A22+U2GMNEEUv9cMzk4RGdvYave5ZI6LxRK7gbgbAIrpKXgLwyBwhVnO57LnzXItupsvu/pTTa0td3Z0L+pzOpxmaY3nptOJBEaHB7meSyy1q0eQsKh/OdZtuhy9vUu5L2UAqqZZ5X6zApQAU/yO/m76VxNwzlx+IxBzFV1DuVyGLJv+VoBLPrc4jNGjHFzmh8+Dy6HduPGKnkhj5C/auxfd1FDfyFlq1ksVVcXxo0eQTs3A6/NXqUeMpcEA1l9yJdZvuIQxlgdGnJVkfjViJDO5ZJJV5mPZ36tSHf547mvNnNZkNmO4Qv6W+95CscTlSlN6JL9LZtlXHMbI0ZcsX1/I536/mXv5Vdd9orm19e6unt4+l7OapYlEHEPHjgGSyVJbaY1qq71Ll+OSy67C4iXL2I0gIlpimshPK0ALQCnFqfhP5nuFiRZ+mBhKQJsstm4QAldRbSmQKO9xs+wrDGNk4CXLLP9egrvxiit6muoav9+5qOfmhoZmL+WjPOrVISsKBg4fQkqw1AKUqb3wBf245LKrccmmyxAMmixljDM4I8kEM8bZgiZbIMQZa/paK4etAC9ukEpqxNUp4a/LZQWKRia5Aixn7iT8xRGMHN1rBXPF3yfmXnXd9Z9obWu7e1Hv4j5SiOySYCw6hcFjA9TTUIl4TX8KQ8fiZStw5TXXYfnyFeziMT9oRb3cT3Jwud9UFDNgIp8pclcC3jLJFXYL9Ymdj8w3Oze/STioHGD6yoQLK5/m0iMLqKrA5RWkYiG/sM3yFVdc3xNuCn+/p6fv5sbmFq9oJBMsPXRgP2aSSfj8gSr1iEe8flx+1RZcfsWViETCDEBZsI5FtjxQ4nmq6StZ4MN9JmdfdZQs5EPL32oGT4PMKLk6guapEGezCkVWURbCRRVzDZTSU4y5w0f2WiXCBQ/uO9793rGGxqau1rYOKzedmpjAwNEjoKoLtaqIthSRQixZtgw33HgjVq9aRaS1BUAUDNnVJGKaWakxWSdECZbSMNZSMGQKEJZgMVt0LExvJdAiUO1gC9baAynx3jm4wwxc8TmKxcLCZu77PvyxeG//4uax0WHEo1FMT0/D5w9a2Y+4EJSrXnXNNbj22mvQ3NDIGMejWm5KeZAk2MhlQvY7FslW/KiIaK2giokWFSGCsZydi7OegWfLf4VvFWaeiRfEWkWDLCuWImX2wDGzTO6FwA3YwKXPVVro4L73Qx+N9/QtbiY0H/+vX3Pzazv6+vpww0034sK1a+GiDkK6WEziMwE10w8R1VI6Q6kRD5ooiCKpUKQ6Zgpk/syrOmbka/pny4eKn0VkzEAUNw/dUDxI48qUipKssL/XBlLiZwZuaRhDh1+0UrVUsbC0vJD7lt/zwY/Ee/r6GbhP/ua/q8D90r33oG9RdxXYdLE4YwkwzlpZ5TVY+j2XDSklqWay8LuCpZXASQBuD4wq0qMIwKwcl4HKH0vn1Ml/qypjrV2REoGUJT+mpxA0wRXWKFUqLmxw3/3+D8cXmeA+9cTjVeA+/N3vIBDgooQ4GAs1jQVOQh0SOSsPkipiv/V7M4iqmG0TGDNStgsT9BzdZL+9aCAKBdxPc/B1M/ImRUrTeVRczVyhYYOb5dIwhg+/aBXr06ni0nJ5AU8c3Pa+D8YX9XLmPv3bJyv+1jDw8MPfrQKXfJeIcJlPNVMYlp7Y81NmqvlNYEXLTOgXZtgWITOgeF22okqZ1R5xA9mKCKKNhqVBZI7LMmOyKERw9p4INIkYwfIwhg7tMaNlYMGDe+t7PxDv7ulj4G576in4AzyYIgY8UgOuAJD5VMZgEUjZgDHLcNznmt0RigbF9JeceVxmtAdglRJe5SawgLSlSyyNMvNbRVFs5riatSKQEoEVMVeAK8xyOp1aWi6XF+6s0Dvf/f54V08vA/fZbU/PCS4rxZkRseVXmVBfqavatWAC154GCVZyEcIwdWAOFPPXImUywWMmV3RWWDcK5bRmMUGjVhqhIdea4xOBrgWXAM4sdHDf/q73xrsXcXCfe/YZBq64sx955GHLLFdYWmEcz2lNFpPqRP6WRcgiIOK/48BWQKkKuMwAjD2PtGJR7WHacSXFYmKFGUyRby/LZVYsEMwUpb3aQEqY6LLF3N1WpSqTTi9s5r7ttv8R7+ruYeDueG67BS4B/D0TXJH6UDAlCuaWAFFlmm0yo5WbVoQGqwjAmtkoZeJF+EogZhbgrZaaSquq1QBH1kJRGbhz+dfZgC6lowiVhzF4aLdVFcpkFji4b33nuy1wd+143oyWeZRJ4Pr9/irBgphFqY9dThTlOqvSY9ZVrSBJiBmW6eV1V2Hm7W0yXDfm6RSPlrnIIfwvPZbMMd1oFaGCfz9bIMVbWw2UGbhDDFx6LP1vwYP7lne8K97ZvYgxd/eunQxcYZa/971H4PN5udIkhH+rX6kmmLKxzfKvTPcV5pgrViw3NWVHDj4PzERfVJV2bPZH2W+SsixDUXlOWwHUDnSl+8ICnylUUYTlIQwerJjlbCazsM3ym99+W7yjq5uB++LuXSwVEm2lBK7b4zEBsBUBqoA20x2rTYYLGcJ3iuqQAFAUCuzFBMHSSiHBrOmaUTI7HxUlFBlU0mP9WWaz+VyKFE+NKkATcwnc4wcrZjmbXeDg3vIH77TA3btnN/zEXLOU9/DDj7C5HCFYCKmQpzBmMGX6Tt7+woMpxjQKhsyynuWfRRXIVLaEbmw9h4EpqkmC8Sprx5FZEd6Mjq081sZSs7QnwK410eWMAPcFq312wYP7xre+Pd7eyZm7b++LXMQwC/Dfefi7cLu9VltMpUxnb5OxFwu4hsxNq6gQVboUuZRY8deiKM/0YUtSJDCrRQwCllpn2AyRrXXmZIqU+JsVLWeiiBBzD7xg3by5bHZhm+Wb3/y2eFtnFwP3wL6XTJ/LafDQt78Dt9drkxTt0XClJmtvRbVyU5EDW8NZwr9WTC4H19aDzIoDogdZlAE1FKgH2ZzLrTCSB0ovF0gJv0vMJXCPHXjBunlzuQUO7g1vemu8vYODe3D/PvjJ55pm+UEC1+0xi+vC5FZSlyoVik0BqDX1W5ORpuzIo+Na8EQzuVlNsqlRFHjl80WWMvEAt7p1xv5zrSJVy1w5O4WIPIxjB3ZVJg5yuYXN3OtveUu8rb2TgXv44IEqs/zNh/4cHg83y4o5wsFrtKLVxazO2HRh0azGW2LMdhhbK4zVzCYYPSvYPB2iQS4yyfao93QDKfFcOTOFiDKMY/t3WTdvfqGDe93Nb463tXcwcI8cOmhTqIAHvvUg3B4akaxow7WFc+GHyZyKgr09gOIaskh3KmadixKiVZXfJLrJfLIIpWKRFQVmTXdszeZzKVKVqQae/wpwj+/faVWP8vkFztzrbrol3trGwT165HCVWb7/mw+yybuqLguarhNRsa0PyqoSmZ0UvNtRtRrjeMDE/SvPdUWR3uxbZg1vvOpUpvHLYsEmSrycf62U9mrNsfhZJp+rEnN3Wj43n88vbLO85fo3xlva2xm4x44egT8Qsj78177xZ/AKcK2Jutq+qEqPlBjKEnJiRWUSEbJZkNerQefRMg+0ikUZ+WLeZoq5rz3TQEoU8AncOmaWd/IVbgwDCx7ca95wc7ylrY2Be/zYQFXh4CsPfAsej88c17D1RdkZa6U+tujZHNDibObpERveEqMf1jQBj46FAlUolFAoFq3A6Uz9a9XNYEbUHNwhDq6Z6hUKhYXN3KuvvSHe3MqZOzR4nINrRstf/vq3mELFxYlq32kv2tvbU63ujJrRSuZ3mY8VfpeLHkJuzOfzbGC6qlXGVnR/pUArWQ7ugM0sL3hwr9xyfby5hTN3eHgQAVby46bw3q3fYAFVVZ3W9Km8j8pe2hNdirwbUUTLHHgheoheK1H94QFVJptlyxxYooSpNonZ2kq0fOqKFE+NKumTBe6+ille8OBecfV18aaWVgbu6MgI/MGKQvWlrxK4PBWywLKNVVrihdmCWinOV1pnRI1WTAsIoEXnRSqTRtmMimcNhs5QkapSrwBUwN1hmeVikXqoFnAnxqVXbYk3N3Nwx8fGLLNMNLr7yw/wPFe0y1h9UnbW2vqWWbRrKk42MYJAJ0GiYr4pKFORSqVBVR4r3akRKuYjkGLlPQBqegwRbRxH9+2wAsYFD+7mK6+JNzW1MHAnJsZNs8xnae5i4FJVqDL6wUxx1VC0fSzEbGu1m2zb0gYCZCr4J2dmQD1QVVGwqUC9Uv8qmuXYDZWZRFudC35HGYdfeh6pxBSv58LAggd30+VXxxubmhm4U5OTVWb58/fcD4+XwDW7Gc31JrhpFUUC+9xPhZ21s0FiiYNyScb0TIpZA7vQMJ+BFK3z6FWT6GoJIzFxHGODh1HIpy3GmtGyoShKd6FQmLC37r6W38/7YtoXX3qlBS5N8lGey4r1MPC5e7ayqpCo2IgASvRFiaFnEh94p0QlcLJqtLaOi0w+j3Q6Bd3WY1xVmnsFgRSxVE6PoyXsgE+SMXL8AOKTI2w6QlS56GNpmlpQFOUXLpfrs9lsNvFagln72vMO7sZNV8QbmpoYc+PxWJVZ/uwXv8YUqkraU2lE57VYE0xWtxUMNhcfsXqkeH8zmeFcrrLol24GSifoxiL9OcVASs6n4JKT6Gj0Y3pqGBNDAygUshVAwZbANxRZPqqq6tdLpdI/nEuA2t/LvIO74ZJL4/WN3CzTehb2aPkzX/gqK/mxPFc0lZs9TlUdFvZ1KkTkbEqNpA/HE0m2t8Cp+teXC6RIgy6lJtDkB3yOMkaOH8Z0bLzCUjNPVxWlqCjqLyUJn8nlcrFzFVTxvuYd3Asv3hyvb+DMnUlOVxQqAJ+66ytmVagyNM0iXnsDnK1HSkzMi+Z1WmE1Pp1kAVm1f62RE08xkCJfKpUSaG/wIjE5gsmxQZQKOXZthOpELJXL5QFNUx/I5/M/PdcBfVWZu37DpnhdQyMDlxYsEX3LdLE++fmvcLM8h2Bhb2YTOS/N+VA6FJ9JIpXKVM3vnNCdaPlYW4ObKTyIiFmnbsfkOOo9GrwoY2x4ANMs4rX7UgOqIhdlWf5/uq5/Op/P88WYX2fHvDN3zUUXx+vrGxi4mXQGgWClQe7jf3ofPF6f2Rdlztra11q0lkGwLVtQlhGNxXhbjOhQPKl/5QvV15b2SoUMkIuhtc6D6alRRCeGUSoVqoIjtlaHrseKhfw92Wz2J68zLE94u/MO7gXrN8TrTHBz2SwfJzHXafro5+5jhYNKX5R9WEusmiq6KzQkEjOYTs+wIsGcddiTAE2RbWFmHM1BCX6HisGBQ4hHJ6tZSgGSpqG1vYMt2RAK10GSpD2Sw3HnQ1+/9zevZ4DnHdzV6y6KR+rqGXML+XyVWf7on9wLN61nzJrdbGU7q+rDa7O5bB6T0SiTEa1uf1vr6csFUqV8lvvSOi/KhQyGjh9FKpmoWoODgHe53Fi1dj1WrV4DWs6Xlumlfw766nDQumaPSU7X3Q9+5Yv7X48gzzu4K9est8AtFgoIBHmeS/8+8pkvmQ1yvKJjLZ5pBlS0StvkVBQz6fTc3f7WOo/VdVkCK58YQ71fQtCtMoaODB5jdV17gBQOR9DTv5hNPrR3LoLb464AKjlAK6vbAZYgaQ5J+gnc+le+ee+90dcTyPMO7orV6+LhSB1jbrlcqjLLH/r0l1i0LFZ0s5a91TQkkilMTEWZhFiVq1r9w5WKjD2QIpbqhThawy6UchmMjgwinZ6pUo8cDgfa2juwdPlKtHV0gn4mZvKNKxJo6ehgC4JWgVrDYkmScpLD8aBbLXz3a1/7WuH1APK8g7t85Zp4yARXUeSqYv0f3fEFuFgPVWXREYqAJ6Ixtp6xaC19Of9K60JlE2MIuxQEnBrisSgmxoeZ7xRWgs7h9nrQ0NCECy/eBJ/PB4fkYMDS7iQCYPqaTCRQLpXQ0Nw8K8AM9IrZHpck3OeQ8z/dunXrObMp42w327yDu3TF6ngozJmrqootWgY+8Mm7mc+lVGg6OYPxySjytqXlZ/OvdqCJpWo2hsaAA6VcGmPjo8hlM1XqEX0g1qclKygW8+jpW4INmy41QTXBZSBXA0zg0drN/kAAwVB4dhabAPMLKb0IA3c+8OW7/vtcZfG8g7tk+ap4MBRh4FJOaY+W3/vxu5ArlDA2MVUN6gmluUoRnViaSYwh6CjDCwWJ6TimJidgCJaa6hGtUEf+knYfoUkCJzHU6UR3Tx/WXrSxGlz6mwkwmWfOZh5QUU49NjKE5pZWVnsWwZUItsRXG6CPSbp+9/3nYNA17+D2L10ZD4bCDFwSBkRARY509eU3AU63JUScEPVa3Q4AsbScmkS9Fyjm0piITqCQy1vrTwiFihYHJfNPOavD4WSbPnGwnKCl8ju7erB67TrmYwWIVV/NyFj8ToCWz2URj8XQ2d3NFkezmWV2E9QcmgH8xJCUcyromldwN119dX9sIro/EAiyJWvoIthFjCUbroWXVYkqraXV/tVAKjoGr16AR5KZNh2P0z4FQm40d+miFcslHaV8nkXVgqUCUPbVZC4FUCtWrq7ysdXgmsAJM10D3HQ8xqYBW1rbuamuMs21GEs5SHjIpeS/cy4EXfMBrmPDpde8CZL0CYck3ZSIjjvEwmJ0IYIiFYKBCrjVMzmlYg6FxDjCbo2WkmfVpGKxWBXxinRGKZdRlkuzspSDyhnLvzrR2tbGlvC1TO9cDDZBo8fVHrRu5dO//Q0uv/o6C+CX8bPnRNB1xuCu2by5zWU4PwI4b3dIEtvFknxebGocPnMBbFrZnMyyqH8u2XgtPGZ9l8zqzNQYnGoOLrWImZkkkqmUuS+QuZceDA6S5MTMTIwNyJ6MpXbG0orrBHJTUwt6+vqqTPLcJrqS5xJ4M9PTeOrxX2N8lOq4Gj7xuS9YQscspnkWvF/boOu0wV170WXXGIyleIckSW4OKgUoPPmPTo3C6+ULiXncbgRCZrHeMLB443Xs99nYGIIuGflMBolkkilRQqIUqYzkcAOGxKbeqXsjl0pU+dLZWMqANxkr/G5jYxM6unhueyrspcfseWEH9u7aARJhhEsgkeTjf3J3le891ShZgvEr6MZdZzvoOiVwF2/cWOcp4wMOh/MTkkNaJVjKAg0TVK7sODA1MQKv18c+N00X2M1yZ9ciOHUFM+kUMtk83yLc0oZp7w8JDpfbWpeZZxyA2+VGLjPNgTN96WwstQMeCoVRV1ePYChkBlncX84FMAVQ23/3W4yPjbCXFRtR0Vc679JVq3HNdTdWJMpZzPfLgM2CLpeCr27devdZqTKdFNylqzZucDj0T0iS4z2SJAVrWTrbz5MTI0yFosPv99nMMtiFpfmeSpsKL/MQrLQvkJdNI3C50P7G6HmZ1HSVL52NpdQIEA6HEQ6H2KgoD35qo+QKyGRxjh46iAP79qBMkwkEqrmYJ1WIwqEINl56OfqXLKsKpuxp0amyVzwuMR17ZuTY4Gcf++U/7zzd557u408At69vi88TzL4L0D8JSJvECatSAZsZrmXxxNgQyw/pIOZQt6OYpamoR9SqwneQpqV5HU4XA4LSGL6Sa+VtsQ2KYTDhnwIk4UsFS2nPIV8giGAwwHz9bOkOdxsVkClt2rPrecSnJtlrWabX1MAX9fZh0+VXm6oWdzu1RYVZ8t05r72qqdmRweHdk1MT3bqmL5Ykx9uf/PW//eJ0wTrdx1tXcdWqC5dpDufHAf2PAKmx9kQ1Ehz/sDUgkyJE265RIENHQ2MT87sMVPqPrWuhmotqc2bVmkna9pRWvBE7T9N5SPyfmebgCl9KYykk/vu8fjhdTjOPrTa9tecfHx7CkcMHocilCqi0xL2usV1Q1qzfgP6ly04QLmYTMk6eEvGrl8lkjwwdHYimc5kNAKxFp88auGsvvvL6cqnwBRh4Q401rMLXbopqWazKMgqFPCvEq2yFGD58RR2ubreb7fBBoILYQwCZ+WIty+xRrJsi7VDQNNUypuNx9lwy+RRgkR+e3YdWA0wS6OH9+8znm/vSm6aXbhqq41548WYEA0F204mqEC8i1P5cw+JZ/K5uGPLE+NjO0ZGRkKqo62Zj21kD9+4vP/CrZ7Zt88ei0StpV++5qF8rv9lZ29HZxoKoYwPHWVWHDrlcZGaNWV8KlWyAchD5xZvTjJqsJrNOgRnN11JqZT1+luda53U4kIhFMTx0jNWOKVDjLoGvPkemfenKVSz/5Z9rllLfiVWhOYsK9AlLpfLEsWMDR5LTiQtgoOVkJvSsgXvf/Q89CQnXTCcSh5968reqoigXnAzg2Xxva0sz+pYsZd2Cx44exlQ0yvYqqD1OjFRnB3jOPHQWsd9+g1C1iWq4mUyS7WotACWtmRgcqW/AmvUXsQheuBWrzFcL8El+tlwUYCSmE7sHjx1XyuXyxScjB8mk1LrLbvWz5XMFuPSihmHoe/e8+PThQ4cuBBCZze/O5nu9Hg+WrVjOxjPZXVwsYuDoUbZzJW9I58eJ7K1UZ2pZPDvA1ZGuuFmyqRTb2Zr8Ov1O7CzGd0bRWfFARLyCpVYKZ4JYSenmDp6E79U0LT02MrInGo326rreNxcZyJcnEzEkopO44uprMT2Tfu3AFW+yWCzGnnj88YFcJnu5/Y1XmebaiFmSEAmH0Nm9yBLWU6kkRoaHWceFOE7qJ2tM7ckYTDdNdGoCxTz5eq+VwhCYskx15ACWr1xtle94SsTdw5mytpDNHhoaGYnnc7mNAKo3b7BdKOqpno5OIhGfYjVmOq678ZZzA1zxPkeHh3c9t/25Fl3Xe+zgzB1cSSxvrW+og9ndyp4WnRhn9VsisZ29zMRbEbMtELKBXAtwqVDAzEycbVPOtjE30xe2/qMio7WtHT39SyxfWgVoLUvnYK2dxYBRjsViO6cmp+o0VV1zMl+az2eRjEWRTiehq3wXMXGcc+DSG9M0rbT9mWe2j4+NE4s9p5IS0UXXVRk0eCBWSqfZn8mxURTLZaYVz60WmSDbAKa9/TKpJFRVhs9HC4XyKhGZXarYuBxOBmgoTEV2UzWzWMrNbAVkHjzNaZZNwGVZHpsYHxvIZDLrYOCE1FCARukdbc6cmo6xjIFuMhqFEYylfJzy8CXLVsDh4m7rNfG5J7srU+nU8acefyJTLqKbE1kAABnESURBVMsXWgm9LbkX8mOV76KdRwjkphYW6dJRLhURi0UhnQLApCuXcjl4KO91Ub5MfcU8L6XzhCMN6Fy0iIkfs4Fay9qTsph/FiOTSu2amooaiiKT6T2xRGReJCrqZ9NJZFI0OipzUNlmGRxcCuiC4QgaGltQ11B9b5w1cO/5+reeBKRrTgas/W+HDh54+uD+g6sBNL6sHGnqzTSLoyky/5BmvTSbSaGQL8JlyoSWiXY6UC7mmUZF7S52VUuWS2wHkbbOToTCETM1seeiZ8ZaXddnEtHY3pl0qh+GYbmg2a6JXC6D3nuRWn5UtYqpZEkI1EAogubWthP2VKoElmdJofriV7/xpAGcMrj0BmVZntm+bdu+dDpzpUSHmbPOHqxUEv8yWwtKZ7tp0kHApVNJSA4XnA6J3fmhcJCNeVZML63VmGcyZVtHFzfnZDrNEqMlNth+PiF4qg2mzJ+LxdKBRCyaLPE0hlc7ZjnIc9J7L+SyzGIIsyuYStE5WY9guI6BSgCf7DhrzL3zvq8/idMEV7zxeCy6d8+uFwKabiw9gcUma2urRvQzzRCR2iQ0aLlcQkMjN13C9CpyGaVSEfUNTQiGwxVATRD5eU+mKJ3IYjLLlKml06mdqZlko66DLNCcB92IVFCgjg9FUxhLLfNrrlZHMmmkrh71fDzqlI6zBu7nvvTVMwaXgyEp+/e9tG1qYmKTJEmBWr1ZiO48RzQBkSTmO6cTUWaWicEtra3say6bZooSBWPEAAbgSVg6K4vtKY/JUk1RRxLJxGC5WFoHCQ3VdadqTJhPp63MiaUmoPQ7+p7vJiqzsRgaZhQB4ymhCsQB4696+hb/NhQMLi97jL/564ceyp7ic0/7YdJn7rrvScA4LbM826sUi4WxPS/snpRl5ZITgysOai2LCTRqm0kkYgiFQwgEQqznypIELZZWhIUTXYDt3LYImV4LDkkv5nO7UjMpSdU0CpCqO6QYkSsVKMPgO12rCu3jZ2MpGwqnLVdlVmBoammzAsRTvOLPODyenyzu7fMVi4VPxafGVyfjMbR2dOY7FvX9eWPA9e1vf/vb1P03r4d0x59+8bR97sneweT4xPbBwUFSbdqrWGxjbS2La3+upC4V1lpm+OVY7CCroCdTM6mXivncEh3otheHOZS2SqfEc28KhmojXvqZfCwBS0sLU4O7dXvU3BhVZ+W3UN6A9LOmlub/bKxvuFZVlQ/s3L4trJQKLNqnm5hy8oA/gI7eJUmv3/tn5YDnL388j9MM0u2fveuHEvCx+bxlNE3LHTl0aFcum7tSckjO2Vg7G4urclErNz05a+1muVwu7UvPpNKKIlOAxIvK1kEozmaMJVairAaXctcUcxOhSB0DogJe9Y1hP7/5l8NOh/PHi/p6M3K5dPt0bOqS6OQ4K0vGYgkkE3G84YYboKsK/MEwvP4gMpkUktMJdHb3pLt6++53KcUfPPzww8VXigl7Px/91OduMyTpERjoeKUntD8/l8sdHKCty3V9lfCd88FaO4shGYVcLrsrl8mSkrayQqgTm0z43078Pfl2AleVy0ilZthD6hqabKZ37hvDNAKaA8YvA3X1/9La0rIWhvThPTu3NyvlIjQC0R9AS1s7/D4fSorC2mT9wRBe3PU8cmzBFo1V1do7OhCO1GHR4uVRj8f7zbDH+PHWrVup+HxGh/VJ3/vpT0c8Cr4BSJ88WfJ+Bq+iT0xMPp1MJC6SHI5wpQpTWxsVuq9dUZqbtZqmDqVnUsNluXAhINVxZs3NqmqzKT4FfzxpwflshqUzVDmiG7H2mOPGmJIcxl91dPYMGrrxgVQydnUiNiVRpA/JidGRYVx40QZEQgF4fQG4/UFk02lEJ8fgdLmZ7l4o5LDl2uuYDuALhFDX2MRSQ5pSbG3vjDW0tHw97NT/19atW+XTvfYn3Mbv/9gdFzt040cGQN0D83YoihIdGxo5LmvKZa+AxVqxkN+Zy6TdmqZdZNHQ/BTVzTnmWz+Fv1EN2uPm0qDN/lb9YJ2bf/OUx+/9WXt7d6dTcnx4dPh49/DgAIJ+P2skoFGUgN/sAPWHUd/YiL27d6GQy7BmBmo4oKnDYDCIbKGArq5uZinGx0YxNnycqV50UGlyyfIV6Fu6Ytztdj+Qirb95Mc//hgvmJ/CMWuD3K233ur0RhrvMAzpfgBccZinI5vJ7EzE4m2GJC2yWGwLtk4Ipihtgh7PpdP7S8XCcgPonO2t0PNmP05iUukJpwC++ZAcDPxdY3PbC+Fw+GbJgT+QHA4XvW6pUMS+vbtQzGWxfv06uL1+eHx+5LI5xKITkEslNrY6PHgcl11xJfxeNzxeP0J1DazbMzY5zpoItm97CjQ/fMEFa+AP+NmNEI7Uo62rh5lxSZKGHZLzgWRn49/++GMvD/JcV4Rdp1s/8PEuh6F9T5Lwh/OELTuNYRjFRDz+XLFUvEKSHKz3ebaIWZHLe7OZVE5V1YsloEKtGhpZGM3y++q/zf5xX+bGOOByuf6mvaPHZWjKRw0Y/V6/f1Ytu1SglQT8GBsdwfjIEJwSV65a2zoQCoWYOucLRtDY1Izp6STGR44hNc3XJaPmvvbOTszMpNDT08OYXNfYzHrJanu4HJI0CMl5v0cv/N3WrVt5u+gsx0nBFY+/9X1//CbdMP6nBMxZmD4T8BVFOZacTuQNA+sqZUTkC7ncC/l8rg3Ql4vzzpbCVP5W8zGqfqzyxLZwucaIV98YKgz8a6Sx8clIuP6yXDr5rnRq2p3PplkETWpUV89itkrAiX1WDlAd+8VdzzGjsOaC1Uyo8YfqWFVoOjaFQj6LaDTKRkbXX7gBrW0t0BQFAeq1bmpBmBg9W/tPrSLndAw4JOn+Q8v6/uHnt93GC8e245TApce/5S23B1zB0lcA/CkA95mAOcdzKNzdlslk6nO5dFIply+qcgX0Ic0uDhbVairrtLDnNdUf4gQ7a1re2YMtO/QSMCG5nX/T0tKZliS8Xy4V14wMDyI9k0RzcxNoYTwSW0gHd7q88Eco+JpDRHFItJ8uY6wsKzh6aB9ymRSrdzOdvL2DFz6cbpbvhusbWTOhJeBwqZSNz5ystZZbPRzRga+7lMI/2gfCTxlcAcyb3vX+NU5d/yGAK+YRYBw/fPBZWSlfNlsmSnd+fUMLwpEwa3SfmhjHDC1gYh5zmlXzxjjxfVYSXh4F44lAIPxv9Q2Ny7PZzAeLubSfgh9iKb02rUXpcjrQ39cHp9sHF3V50hLA0wnWLE8mtLWji0mS9u5JUcCgFqBnnnqC5csXb9zIblDKb8nnBiP1HECTlZSSxSfHMT46zFp0unr6sHTFakTqGqrOTT1hY0ODrOm/q6dXfMSDBrDVpeR/TiCfNrjiet7yjvf8sWQYD1Lpbz5AHjx66FlZLl9WNWrAmtaDfAxU54zt6e1HY1MTnnnqcbb8QrU1PfHjmODN1rWbgST9fXNz+5DT4/rDUi67maLmvXt2oq2tA93dXSy4IVAlGmPxBuF0uZgmfnDfbkDXaDyByZHNzS1s0+dQQwtcbm91O4+pbVNB5PjRI+js7EQgXHcCS8kMp2aS+N0T/4VgwM/UsvaOTkQidSBZdPHKdaybNJGI4/iRg5gYG2GPIZ9Oa30sX72WCS7msT83k7rrTMFl53jjG29t0d3StyUYH3ilAA8OHHpWIXBt4avTTbNGYXQtX4fCutuhJ44i8es/w7U33IznnnmKrWVxBrntXo/X9/PGptamQin/R3I+W0+1WWIplRPrG5swOT6B1ReshuT0wGHuYJahwvzMNMu+KOhJxKZw9ZZr4XI44PJ44PEF4fYFeIOersHt8tiYdmrdIJQf797xHEubbrjxRgYcBVWhSD0S8RgK+Rz27d3DzP2q1RegpbkFqlJmN1h7dy+aWtsxdGxgz9NP/qaYSiW1VwSuAPT6N79tCyD9UDKw4kxBHjl2+NmyLF9Web6ESFMrnNDRfNtf4uEPXoTb/3ECiR/ejLe+45147Jf/ilKxdlGZan9rC5lkhyT9S7Chca/fE7heLuev1TRVGjh6mPnA/v7FaG5uhsfthEEChsMNyUlThsDAkQNMYKAhClKRKNINBAJsRXYqyvsDYTjYCAyQmUliOj6F9Axf87Kzp5+ECNvYZ02T3hw9XbTKDpNRHE4cObAXk+OjFkvbu7rZ+yJz3NbWhsbWdrIo6Z3bt+05sPfFblVVyJL+raIoj84LuPQ+br31Vk8iU/4CgHtOVvieC/yRoSPPKuUKuOS7Orr6IZfyaLrlK1C6Lkfisfux3DfFZm5//dgvZ1u+QHgNEW+NOl2en9U1NzlVRX9fOZdqV2VaZtBgQUokUo9cIY+G+kaEIxEYEpchc9kUcmnePkNmdmJ8DIuXLEVbSxMLgJweH1xuHyShSasKsyQkOricEnt/kboIBToI1TXDH4qccg8XvT5p0ZT70g1EexD39S/BihXLmZRJAkhDcxvz8fFY9MD2p5+YjsdiGw3DOGjo+g8CgcA/jo2NMV163sAVoG256a1LdV37AQzccDosHhk88qyqVDO3b+lKNkhGA920q9cFa9ejb/FiPPFf/8GE9jn8LYXS/x0K1W/zhUIbNbl0i1IuOWkbmpGhY+jqWoTFSxbD66GeLAmaIUGXnIwZ5PMmRocQiYRBvdgNTU0IBripLasSbxpwcpbmqSkuGTfVJANOtwdTU1PYcNEGNutEAZMvGGYBGVWWqGBArCe/aEXYtrozQbF3907MJKZYaZFeh6lYgQAbd+1fshgNTa00slM4sPfFXftfeqFJluV+wzD+Sde0H0xPT++ovd7zDq54gSuvu/k9hoHvUunvVEAeGzr6rEJm2faOqD12+aq1LP0gVtAw2M7nt7Gm91ny3pTD5fw/4brWtNvpfGdyOrrE4+QTfHQxSZCncySmk+jo7ISmS0wVKhayKOYyoG4Qmjak9bBoVveySzczsyg5PMxEE0tpNqZUzGPw2FFks2k0NDSwf5FIhPleihHcviB8gQB7TRbVxydZdyQdNEvVt3gJ2jp7WHBmb5AvFgt4/D8fY1nAlVddzVhPTYGRhmbUN7eglM8d3/X8c6OTk+PrASNuAD8su93/Oz0ywrXKWY5XDVx6rS1bttSXNNc3IbGS4pydhPTYiaGBZ2WLuZQ78nfr8/vR2NwCTVYQjU7NIhdit88f+Y9AKLTE0NS3q0rJTWMbZEqpa2LDxosRCgZYpE27iSk6WEGemHpg7wusvSccCjL9l4bByKyWFMDjJ4C4j6RAJpua5mVAWjPS7WHKEQ23Le7vhdvjZ8EUsZduEirEU7F/z87nGdCrVq1mDfuGrrHzhuqaGOA0A0VsFJ0mFDGPjYzA63GioamFAiVl6PjAzv0v7faVi6W1hoF/16D/IDYxQWtfVZqiXwtwxWtuvPLazQ4dlBvTmMqsx/jIsSqzfJIUhp5flhyOfw3XNY+4Pd6bUsnEepfTgJvSFklCMBRhbKcV1ZubmlmQRNouFcppcRUq7XEm+dlyRGvWrmGjMDoooOI91RRoEai0xOHe3TvQ3tGFttZW5kvdNDIqOeDyhZlKRa9J62ck45NcqKBze7xoaW3DTCqFzi5Kq+qgGkB8apyNl1CeTMei3n70LF7G9oIQ/dTFYnH8wN4XjkyMj63WWaHZ+CtA//H4+PjYqVhB8ZhXlbn2N0LFiIHR2Gclw9gKIFT7JidGBbhzyYX0DGnI4/H/30C4vh7Qb4Mm+8nsFosltvDYilWr0dXZziYbSrKKssy3rtE1BSODx6HrKouKabQ0FAwykFRdgqyCm0kHFQGoyzHN/rHNKiAxWXBsbBSbLrmESYhkfknwp3acdDLBTHU6k8Hw8QG2AmxnZwdzB9QA6PWHQSaXbpQjhw8xxi5dvgytLa3WKCuZ3khDkx6dnNh16OBerZDNXwwYv9MM/dH2lpZf7Nq165QrQfbretbAFS+65pKrFzkN9fuA9Db7G5kcHXxWVSnPrZ2rh+FwSL8O1TXtd7m9W4rFwoZSPsPMHJluyoNp0oCku+RMGl5/gLFUpjZatcQqK3RQ/ZQW5I6Ew0xIoPElCqZ4WE2g5phydOjASwzo3t5eJjd63S72d8nlY8DSDUABz8jxo1BlPodMrCchg5ZootdobW2D5PJgcmwYM4kYmzCko4nci6azNKm1rZWJGU6Xe3rgyKG9k6NjS3RDrTMM/afQ9UeHh4cPng5LZ3vsWQdXvInVF136Vgn4CwCsCTw2PshEDJuUmHR5fP9SV98YgIS3GaocIEWI1s+gvQ5od83NmzcxlhZKMoolha2nQWMsJYqMB4+iqaUVvT29rG7qcbuYjFiQNVpWhYFEvjefmYFcypksBerqG1mgRfXYcF094HBBMjXtbHoG9I+WfCDN2eXyYPPmzTT9C6fbDbc3wN4f9WKTnrxz+za0d3Zh5coVLOCim4Raa8INTUjPpF4cOHo4W8hlLzEM4wB0PFoo+H4Wje6dt0a51wxcAnTdunVBGe6vwZD+ZHpqZIfCA6odi3r7/13RnVeVy6U3jA8PSPX1DWior2NTBiE2be/G6GSc+bWyrILaWRzg5pexlBrEQxGQi1q7di3KCm0Hx5fHJ42COi7lcoEt0z8+Nozu7h709fXB66V6CIMKuoMm93lRYODwfjgMPthFFoLGYwLBAOKJaSxa1MsYzfqg4lFQ5YgO6ujo6OzG8PAwli5ZAl8wBKfHm50YGdk1MTHaoatarwH955ru+MHQwMHtr5Sl5xRz7W9mxZoN62YSE39QKhT+I5PJ7PjyAw9+UtWMO5/bvj1/+MC+NYnoOGeI5GALg+aLZZbQQ6e1mQ1MjI+ynHXJkiVobGyEz+th+yjkiwrbaUyI+alEDJKhMnmQjlAowiLfTDaD3t4+aCygp8lBnXVNUHAkfDrVaC+97HIEA1QccDG/KyuUG8eZ36WeZqpatba3M0tBZ6IF1UjAKBaKh8ZGjk9lM9mLDRhR6PqPnJLx14cOHZp+NUA96wHV6XyI++5/6NOQ8H16TqGY3/27J55qzWRSXQQgXXQC1evhIxukq9KaU9RETr6PKjPFMi8yEKi6IkORi5YppUh4/foLEQz6mS5Nvlc1uMkk1k6Oj7BFRcmM08o6pDWHqAuCzLgmgQr1lBLxQIrLn8yyNDaxNIpAJ53Z5fWVpuOJHbHoWERV1DWGYfw/SPqjh/fv/89TSWNO53rN9djX1CzP9abuu//Bt0KS/skmYyrRyeiOZ5/Ztj42NR6cjk0wk7d8+TJWLiOfS/+ISWKsJTOTYKbaLIsyLZYqLJlsDvUNDdz0mguM0uBZMZ+BUi6B6kyxaBRt7e1Yurif2XHD4UapWAIVDzibeRBFqQ75ZrovXGauq6nGUHRqfDCXTq/VYbCFxRy6/KMDBw7w1cvO4nFOgkuf/55vPNzhNOQvGpBut0A2MHP40MFDe3bv3qwrZQfN6BTLZpZAn0SVoallJjTQ5si0l+DyFSvR0UErrgKyokNWxQZTBptFGjl+BPX1tF6WiwVT5NMpRcoWFDZlWCgUMDo0AI9LLL/UjPr6Or4GpYvrzA6XRy1kczvi8ahTU5WLYRhPazAeDbgd/3ymacx83APnLLjiw9391Qc7JahfhITbYfBGc03Tju18fkdxYnx8DTGV2JTPpljQ5Xa7LKmRFiCjdSgCwTBoOznKeij4kot5thYVyY0UYY+PjuLa665lfluHg90YZP6ZC5CcrIaay2WwZcu13DI4PRQcUaQ+mZqZPpjP5lbo0COGrv+dbjh+cODFHefEbibnPLgC5M997t4uzSV9CcBHxDRBoVja+cKO5zvSqZmueHScmeBNmy6BomiM0SRiUISsURSt6zh+7DDzz+FQgPlJ+p4YWyjTwmcuZqaPHnwJAb8PTqfE/l5X3wCf14tUNscGvxxON23/tiudTpVVRaZc7KChG48q5dzfHzhwgO8Vd44crxtwxfX6yKfv7pYM7UuAQSBTR6QynZx57sjBgxcqcilEXYSaOX2vKWXoSsmKjqndNJ/NoqOT5MAQFI2tH8Ua1sQefuRzJ8fHmCZNkTFVjCg6NuBKFgq5F0uFQo8OfZFh4Ocw9Ef3UDJ7jh6vO3DFdXz3hz65yOUwiMl/TCAbMKZj41OHJ6YmL6Vx8NjUGFOHSETo6uxka0NSYxvlvNlCmeXEtKsJjWlS4YDSF2Kp3+eFQYqVojPtWdP1veViPqkq6ibD0GPQ8SNddfxk9+7fxc9RTK239boFV3yCW299f4/mct4jAR8ikHXdODo5MV7M5/PraERE18pMSiRQafs5kgz52o8kdnBTTP3ES5csZmVAYq4OR05T5Z2qojRrurHaMIxfGZrx6K7nf/cr2obhXAdVvL/XPbjig9zyjnf0Grr7HgkGgexWVfX5eCLRqataNwVBtLz+8SMHmL67qLsbISrIu2ltZyBfUljkC0hHDF0b03Rtg2EYCnTjr6matX37k0OvF0Dt73PBgCs+1Jab39bnMLR7DQMfpE1TVUXens8XNlDHC4kOtGTwxg0bmM5Ma40aEsoOh+N5AwatgbQBhv6MAenRTKLx5wcO/Py0h6/OpZtgwYErLu6mq2/sd+jGvYZkfJC2U9B17bCu6ZfzxVhpXSrniNvlPCJJ0lrDMII6jL/XNf3R5373m73nEkCv5L0sWHDFRVl78ZWLAf1eCRK13x7zetxjfr8/YACUxhyiNMZQvD/dtu2Xr9raFK8EoFfy3AUPrrg4S9dsXOIwjPuCoWB3JBJKGJr06FOPP/bUK7l45/pzf2/AtYDYssWFJ5+cczLuXAfsdN7f/wfvVE4m+Gp+kAAAAABJRU5ErkJggg=="/><path d="M 845.33 302.4 C 815.12 302.4 794 277.79 794 251.59 C 794 220.27 819.22 200 845.71 200 C 871.22 200 896.4 220.93 896.4 251.18 C 896.4 278.28 874.84 302.4 845.33 302.4 Z" fill="#0d2636" stroke="none" pointer-events="all"/><path d="M 834.25 291.19 C 834.25 293.4 832.57 294.32 830.06 293.46 C 814.91 288.15 800.34 271.75 800.34 251.27 C 800.34 223.57 824.03 206.1 844.57 206.1 C 871.22 206.1 890.18 227.94 890.18 251 C 890.18 270.03 877.94 287.54 859.59 293.69 C 857.52 294.24 856.23 293.13 856.23 291.31 L 856.23 277.98 C 856.23 275.4 855.18 272.65 853.24 270.74 C 860.69 269.89 865.21 268.02 868.67 264.46 C 872.07 261.08 873.6 256.13 873.88 250.01 C 874.07 245.15 872.77 240.41 869.25 236.8 C 870.48 233.82 870.69 229.86 868.83 224.97 C 865.14 224.69 860.94 226.9 856.64 229.56 C 849.08 227.59 841.52 227.33 833.96 229.67 C 830.58 227.47 827.51 225 821.65 224.97 C 820.1 229.29 819.86 233.23 821.19 236.72 C 817 241.37 816.52 245.93 816.6 250.47 C 817.06 259.25 820.27 263.68 823.83 266.33 C 826.79 268.52 830.94 269.9 837.27 270.83 C 835.57 272.51 834.62 274.51 834.46 276.86 C 830.74 278.56 825.42 279.41 821.78 274.25 C 820.15 271.66 817.93 268.73 813.72 268.74 C 813.03 268.72 812.35 268.98 812.25 269.28 C 812.15 269.61 812.54 270.3 813.01 270.57 C 816.7 272.92 817.29 274.23 818.8 277.44 C 820.2 281.19 822.62 282.63 825.24 283.64 C 827.92 284.59 832.25 284.32 834.25 283.64 Z" fill="#ffffff" stroke="none" pointer-events="all"/><path d="M 845.2 193.63 L 845.2 86.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 845.2 198.88 L 841.7 191.88 L 845.2 193.63 L 848.7 191.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 845.2 81.12 L 848.7 88.12 L 845.2 86.37 L 841.7 88.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="1060" y="10" width="200" height="60" fill="#ffffff" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 40px; margin-left: 1061px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; background-color: white; white-space: normal; word-wrap: normal; ">Clients Supported:<br />Chrome, Firefox<br />Desktop Only</div></div></div></foreignObject><text x="1160" y="44" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Clients Supported:...</text></switch></g><rect x="1060" y="206.2" width="200" height="90" fill="#ffffff" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 251px; margin-left: 1061px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><span>https://config.qmk.fm</span><br /><span>Single Page Site<br /></span>JavaScript/VUE<br />Source: qmk/qmk_configurator<br /><span>Host: Github Pages</span></div></div></div></foreignObject><text x="1160" y="255" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">https://config.qmk.fm...</text></switch></g><path d="M 896.4 251.2 L 1060 251.2" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 880 457.9 L 1060 457.9" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 833.22 495.8 C 828.16 495.8 821.72 491.64 821.72 483.75 L 821.72 475.34 L 813.15 475.34 C 811.65 475.34 810 474.49 810.03 471.92 L 810.03 455.36 C 810.03 453.81 810.93 452.17 812.91 452.12 L 821.72 452.12 L 821.72 431.37 C 821.72 425.69 826.62 420 833.69 420 L 856.49 420 C 858.53 420 861.18 421.45 863.72 423.93 L 876.39 436.67 C 879.49 440.04 880 441.77 880 443.93 L 880 484.09 C 880 490.1 875.34 495.8 867.72 495.8 Z" fill="#000000" stroke="none" pointer-events="all"/><path d="M 850.47 469.58 L 850.47 457.06 L 854.43 457.06 L 858.82 463.99 L 858.82 457.06 L 861.89 457.06 L 861.89 469.58 L 858.67 469.58 L 853.58 461.29 L 853.58 469.58 Z M 844.7 463.4 C 844.69 461.89 844.28 459.4 841.65 459.33 C 839.7 459.3 838.71 461.33 838.71 463.26 C 838.77 466.2 840.13 467.37 841.74 467.37 C 843.53 467.33 844.68 465.87 844.7 463.4 Z M 835.26 462.55 C 835.34 459.28 837.91 457.1 840.4 456.87 C 843.13 456.63 844.5 457.13 845.74 457.91 C 847.41 459.11 848.53 461.32 848.06 464.79 C 847.61 467.23 846.07 469.6 842.36 469.85 C 841 469.92 838.36 469.99 836.56 467.58 C 835.73 466.38 835.22 465.51 835.26 462.55 Z M 823.19 465.77 L 823.65 465.72 C 825.75 467.29 827.29 467.4 828.78 467.35 C 829.66 467.23 830.41 467.01 830.47 466.24 C 830.51 465.69 829.93 465.31 829.36 465.17 C 827.6 464.71 826.16 464.86 824.34 463.46 C 822.89 462.1 822.96 460.46 823.66 459.16 C 824.9 457.24 827.05 456.94 828.36 456.83 C 830.57 456.81 832.33 457.19 833.44 457.73 L 833.43 460.67 L 832.94 460.71 C 831.93 459.92 830.82 459.41 829.27 459.32 C 828.41 459.31 827.38 459.3 826.76 460 C 826.43 461.17 827.29 461.25 828.04 461.42 C 830.02 461.87 831.13 461.99 832.65 462.95 C 834.58 464.43 833.97 466.96 832.96 468.1 C 831.63 469.39 830.35 469.86 827.92 469.85 C 826.52 469.83 824.81 469.63 823.17 468.83 Z M 813.29 466.83 C 814.07 467.09 814.63 467.45 816.44 467.23 C 817.09 467.05 817.76 466.56 817.76 465.57 L 817.76 459.51 L 814.91 459.51 L 814.91 457.06 L 821.13 457.06 L 821.13 466.31 C 820.87 468.24 819.78 469.26 818.09 469.59 C 816.91 469.84 815.53 469.98 813.29 469.57 Z M 827.52 475.34 L 862.48 475.34 C 864.3 475.34 865.44 473.93 865.44 472.17 L 865.44 455.09 C 865.44 453.39 864.22 452.12 862.32 452.12 L 827.52 452.12 L 827.52 431.76 C 827.52 427.61 830.96 425.79 833.33 425.79 L 854.21 425.79 C 856.33 425.79 856.7 428.23 856.7 429.52 L 856.71 440.31 C 856.71 442.3 858.38 443.31 859.64 443.31 L 870.53 443.31 C 872.02 443.31 874.24 443.77 874.24 446.39 L 874.24 483.83 C 874.24 487.16 872.07 489.95 868.16 489.95 L 833.53 489.95 C 830.7 489.95 827.52 487.95 827.52 483.92 Z" fill="#ffffff" stroke="none" pointer-events="all"/><rect x="1060" y="412.9" width="200" height="90" fill="#ffffff" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 458px; margin-left: 1061px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">https://keyboards.qmk.fm<br />Keyboard Metadata<br />Source: qmk/qmk_firmware<br />GH Action: Update API Data<br />Host: DigitalOcean Spaces</div></div></div></foreignObject><text x="1160" y="462" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">https://keyboards.qmk.fm...</text></switch></g><path d="M 845.04 420 L 845.14 308.77" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 845.15 303.52 L 848.64 310.52 L 845.14 308.77 L 841.64 310.51 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 905 630 L 1060 630" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 815 610 C 791 610 785 630 804.2 634 C 785 642.8 806.6 662 822.2 654 C 833 670 869 670 881 654 C 905 654 905 638 890 630 C 905 614 881 598 860 606 C 845 594 821 594 815 610 Z" fill="#ffffff" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 630px; margin-left: 786px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">QMK API</div></div></div></foreignObject><text x="845" y="634" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">QMK API</text></switch></g><rect x="1060" y="595" width="200" height="70" fill="#ffffff" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 630px; margin-left: 1061px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">https://api.qmk.fm<br />RESTful API<br />Source: qmk/qmk_api<br />Host: Rancher on DO VM's</div></div></div></foreignObject><text x="1160" y="634" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">https://api.qmk.fm...</text></switch></g><path d="M 794 275.46 L 709.04 315.72 Q 700 320 700 330 L 700 570 Q 700 580 709.45 583.26 L 785.69 609.55" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 790.65 611.26 L 782.89 612.29 L 785.69 609.55 L 785.17 605.67 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 460 251.8 L 290 251.8" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 490 229 C 466 229 460 251.8 479.2 256.36 C 460 266.39 481.6 288.28 497.2 279.16 C 508 297.4 544 297.4 556 279.16 C 580 279.16 580 260.92 565 251.8 C 580 233.56 556 215.32 535 224.44 C 520 210.76 496 210.76 490 229 Z" fill="#ffffff" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 252px; margin-left: 461px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Digital Ocean<br />Spaces<br />(S3)</div></div></div></foreignObject><text x="520" y="255" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Digital Ocean...</text></switch></g><rect x="0" y="221.8" width="290" height="60" fill="#ffffff" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 288px; height: 1px; padding-top: 252px; margin-left: 1px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">https://qmk-api.nyc3.cdn.digitaloceanspaces.com<br />Space: qmk-api<br />Host: Digital Ocean</div></div></div></foreignObject><text x="145" y="255" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">https://qmk-api.nyc3.cdn.digitaloceanspaces.com...</text></switch></g><path d="M 580 251.8 L 787.63 251.31" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 792.88 251.3 L 785.89 254.81 L 787.63 251.31 L 785.87 247.81 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 875 790 L 1060 790" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 815 768 C 815 757.33 875 757.33 875 768 L 875 812 C 875 822.67 815 822.67 815 812 Z" fill="#ffffff" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 815 768 C 815 776 875 776 875 768 M 815 772 C 815 780 875 780 875 772 M 815 776 C 815 784 875 784 875 776" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 800px; margin-left: 816px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">RQ</div></div></div></foreignObject><text x="845" y="804" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">RQ</text></switch></g><rect x="1060" y="755" width="200" height="70" fill="#ffffff" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 790px; margin-left: 1061px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Redis / RQ<br />Job Queue<br />Source: qmk/qmk_redis<br />Host: Rancher on DO VM's</div></div></div></foreignObject><text x="1160" y="794" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Redis / RQ...</text></switch></g><path d="M 845 670 L 845 753.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 845 758.88 L 841.5 751.88 L 845 753.63 L 848.5 751.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="785" y="910" width="120" height="80" rx="12" ry="12" fill="#ffffff" stroke="#000000" pointer-events="all"/><rect x="787" y="912" width="116" height="76" rx="11.4" ry="11.4" fill="#ffffff" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 114px; height: 1px; padding-top: 950px; margin-left: 788px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">qmk_complier</div></div></div></foreignObject><text x="845" y="954" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">qmk_complier</text></switch></g><rect x="1060" y="915" width="200" height="70" fill="#ffffff" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 950px; margin-left: 1061px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">QMK Compiler<br />Job Runners<br />Source: qmk/qmk_compiler<br />Host: Rancher on DO VM's</div></div></div></foreignObject><text x="1160" y="954" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">QMK Compiler...</text></switch></g><path d="M 845 820 L 845 903.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 845 908.88 L 841.5 901.88 L 845 903.63 L 848.5 901.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 779.03 925.64 L 529.38 833.46 Q 520 830 520 820 L 520 303.77" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 783.95 927.46 L 776.17 928.32 L 779.03 925.64 L 778.6 921.75 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 520 298.52 L 523.5 305.52 L 520 303.77 L 516.5 305.52 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 905 950 L 1060 950" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Viewer does not support full SVG 1.1</text></a></switch></svg> diff --git a/docs/drivers/battery.md b/docs/drivers/battery.md new file mode 100644 index 0000000000..b1f75c1156 --- /dev/null +++ b/docs/drivers/battery.md @@ -0,0 +1,51 @@ +# Battery Driver + +This driver provides support for sampling battery level. + +## Usage + +To use this driver, add the following to your `rules.mk`: + +```make +BATTERY_DRIVER_REQUIRED = yes +``` + +## Basic Configuration {#basic-configuration} + +Add the following to your `config.h`: + +|Define |Default |Description | +|--------------------------|--------|--------------------------------------------------| +|`BATTERY_SAMPLE_INTERVAL` |`30000` |The time between battery samples in milliseconds. | + +## Driver Configuration {#driver-configuration} + +Driver selection can be configured in `rules.mk` as `BATTERY_DRIVER`. Valid values are `adc` (default), `vendor`, or `custom`. See below for information on individual drivers. + +### ADC Driver {#adc-driver} + +This is the default battery driver. The default configuration assumes the battery is connected to a ADC capable pin through a voltage divider. + +```make +BATTERY_DRIVER = adc +``` + +The following `#define`s apply only to the `adc` driver: + +|Define |Default |Description | +|-----------------------------|--------------|--------------------------------------------------------------| +|`BATTERY_PIN` |*Not defined* |The GPIO pin connected to the voltage divider. | +|`BATTERY_REF_VOLTAGE_MV` |`3300` |The ADC reverence voltage, in millivolts. | +|`BATTERY_VOLTAGE_DIVIDER_R1` |`100000` |The voltage divider resistance, in kOhm. Set to 0 to disable. | +|`BATTERY_VOLTAGE_DIVIDER_R1` |`100000` |The voltage divider resistance, in kOhm. Set to 0 to disable. | +|`BATTERY_ADC_RESOLUTION` |`10` |The ADC resolution configured for the ADC Driver. | + +## Functions + +### `uint8_t battery_get_percent(void)` {#api-battery-get-percent} + +Sample battery level. + +#### Return Value {#api-battery-get-percent-return} + +The battery percentage, in the range 0-100. diff --git a/docs/faq_debug.md b/docs/faq_debug.md index 35a4160e27..269049afb8 100644 --- a/docs/faq_debug.md +++ b/docs/faq_debug.md @@ -77,6 +77,17 @@ KL: kc: 172, col: 2, row: 0, pressed: 1, time: 16303, int: 0, count: 0 KL: kc: 172, col: 2, row: 0, pressed: 0, time: 16411, int: 0, count: 0 ``` +### Which keycode is this keypress? + +Keycodes are logged in the example above as numerical codes, which may be difficult to interpret. For more readable logging, add `KEYCODE_STRING_ENABLE = yes` in your `rules.mk` and use `get_keycode_string(kc)`. For example: + +```c +uprintf("kc: %s\n", get_keycode_string(keycode)); +``` + +This logs the keycode as a human-readable string like "`LT(2,KC_D)`" rather than a numerical code like "`0x4207`." See the [Keycode String](unit_testing#keycode-string) section of the Unit Testing page for more information. + + ### How long did it take to scan for a keypress? When testing performance issues, it can be useful to know the frequency at which the switch matrix is being scanned. To enable logging for this scenario, add the following code to your keymaps `config.h` diff --git a/docs/features/community_modules.md b/docs/features/community_modules.md index a28c5afaeb..52526c9fe8 100644 --- a/docs/features/community_modules.md +++ b/docs/features/community_modules.md @@ -72,6 +72,7 @@ A Community Module is denoted by a `qmk_module.json` file such as the following: { "module_name": "Hello World", "maintainer": "QMK Maintainers", + "license": "GPL-2.0-or-later", "features": { "deferred_exec": true }, @@ -86,6 +87,10 @@ A Community Module is denoted by a `qmk_module.json` file such as the following: At minimum, the module must provide the `module_name` and `maintainer` fields. +The `license` field is encouraged to indicate the terms for using and sharing the module. It is recommended to use a [SPDX license identifier](https://spdx.org/licenses/) like "`Apache-2.0`" or "`GPL-2.0-or-later`" if possible. + +The `url` field may specify a URL to more information about the module. + The use of `features` matches the definition normally provided within `keyboard.json` and `info.json`, allowing a module to signal to the build system that it has its own dependencies. In the example above, it enables the _deferred executor_ feature whenever the above module is used in a build. The `keycodes` array allows a module to provide new keycodes (as well as corresponding aliases) to a keymap. diff --git a/docs/features/pointing_device.md b/docs/features/pointing_device.md index 0ecf82c8df..a139df9dc4 100644 --- a/docs/features/pointing_device.md +++ b/docs/features/pointing_device.md @@ -419,6 +419,32 @@ The `POINTING_DEVICE_CS_PIN`, `POINTING_DEVICE_SDIO_PIN`, and `POINTING_DEVICE_S Any pointing device with a lift/contact status can integrate inertial cursor feature into its driver, controlled by `POINTING_DEVICE_GESTURES_CURSOR_GLIDE_ENABLE`. e.g. PMW3360 can use Lift_Stat from Motion register. Note that `POINTING_DEVICE_MOTION_PIN` cannot be used with this feature; continuous polling of `get_report()` is needed to generate glide reports. ::: +## High Resolution Scrolling + +| Setting | Description | Default | +| ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------- | +| `POINTING_DEVICE_HIRES_SCROLL_ENABLE` | (Optional) Enables high resolution scrolling. | _not defined_ | +| `POINTING_DEVICE_HIRES_SCROLL_MULTIPLIER`| (Optional) Resolution mutiplier value used by high resolution scrolling. Must be between 1 and 127, inclusive. | `120` | +| `POINTING_DEVICE_HIRES_SCROLL_EXPONENT` | (Optional) Resolution exponent value used by high resolution scrolling. Must be between 0 and 127, inclusive. | `0` | + +The `POINTING_DEVICE_HIRES_SCROLL_ENABLE` setting enables smooth and continuous scrolling when using trackballs or high-end encoders as mouse wheels (as opposed to the typical stepped behavior of most mouse wheels). +This works by adding a resolution multiplier to the HID descriptor for mouse wheel reports, causing the host computer to interpret each wheel tick sent by the keyboard as a fraction of a normal wheel tick. +The resolution multiplier is set to `1 / (POINTING_DEVICE_HIRES_SCROLL_MULTIPLIER * (10 ^ POINTING_DEVICE_HIRES_SCROLL_EXPONENT))`, which is `1 / 120` by default. +If even smoother scrolling than provided by this default value is desired, first try using `#define POINTING_DEVICE_HIRES_SCROLL_EXPONENT 1` which will result in a multiplier of `1 / 1200`. + +The function `pointing_device_get_hires_scroll_resolution()` can be called to get the pre-computed resolution multiplier value as a `uint16_t`. + +::: warning +High resolution scrolling usually results in larger and/or more frequent mouse reports. This can result in overflow errors and overloading of the host computer's input buffer. +To deal with these issues, define `WHEEL_EXTENDED_REPORT` and throttle the rate at which mouse reports are sent. +::: + +::: warning +Many programs, especially those that implement their own smoothing for scrolling, don't work well when they receive simultaneous vertical and horizontal wheel inputs (e.g. from high resolution drag-scroll using a trackball). +These programs typically implement their smoothing in a way that assumes the user will only scroll in one axis at a time, resulting in slow or jittery motion when trying to scroll at an angle. +This can be addressed by snapping scrolling to one axis at a time. +::: + ## Split Keyboard Configuration The following configuration options are only available when using `SPLIT_POINTING_ENABLE` see [data sync options](split_keyboard#data-sync-options). The rotation and invert `*_RIGHT` options are only used with `POINTING_DEVICE_COMBINED`. If using `POINTING_DEVICE_LEFT` or `POINTING_DEVICE_RIGHT` use the common configuration above to configure your pointing device. diff --git a/docs/public/badge-community-dark.svg b/docs/public/badge-community-dark.svg index dba561dda1..5236cf1696 100644 --- a/docs/public/badge-community-dark.svg +++ b/docs/public/badge-community-dark.svg @@ -1 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg width="100%" height="100%" viewBox="0 0 1260 371" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;"><rect id="badge.-community.-dark" x="0" y="0.321" width="1260" height="370" style="fill:none;"/><clipPath id="_clip1"><rect x="0" y="0.321" width="1260" height="370"/></clipPath><g clip-path="url(#_clip1)"><path d="M1260,33.621c0,-18.379 -14.921,-33.3 -33.3,-33.3l-1193.4,0c-18.379,0 -33.3,14.921 -33.3,33.3l0,303.4c0,18.378 14.921,33.3 33.3,33.3l1193.4,0c18.379,0 33.3,-14.922 33.3,-33.3l0,-303.4Z" style="fill:#333;"/><path d="M118.018,302.021l-6.434,0c-1.775,0 -3.217,-1.441 -3.217,-3.217l0,-20.679l-4.548,0c-15.366,0 -27.841,-12.475 -27.841,-27.841l0,-4.548l-20.679,0c-1.776,0 -3.217,-1.442 -3.217,-3.217l0,-6.434c0,-1.775 1.441,-3.217 3.217,-3.217l20.679,0l0,-14.123l-20.679,0c-1.776,0 -3.217,-1.441 -3.217,-3.217l0,-6.434c0,-1.775 1.441,-3.217 3.217,-3.217l20.679,0l0,-14.123l-20.679,0c-1.776,0 -3.217,-1.441 -3.217,-3.216l0,-6.434c0,-1.776 1.441,-3.217 3.217,-3.217l20.679,0l0,-14.123l-20.679,0c-1.776,0 -3.217,-1.442 -3.217,-3.217l0,-6.434c0,-1.775 1.441,-3.217 3.217,-3.217l20.679,0l0,-14.123l-20.679,0c-1.776,0 -3.217,-1.441 -3.217,-3.217l0,-6.434c0,-1.775 1.441,-3.216 3.217,-3.217l20.679,0l0,-4.548c0,-15.366 12.475,-27.841 27.841,-27.841l4.548,0l0,-20.679c0,-1.776 1.442,-3.217 3.217,-3.217l6.434,0c1.776,0 3.217,1.441 3.217,3.217l0,20.679l14.123,0l0,-20.679c0,-1.776 1.441,-3.217 3.217,-3.217l6.434,0c1.775,0 3.217,1.441 3.217,3.217l0,20.679l14.123,0l0,-20.679c0,-1.776 1.441,-3.217 3.217,-3.217l6.433,0c1.776,0 3.217,1.441 3.217,3.217l0,20.679l14.123,0l0,-20.679c0,-1.776 1.442,-3.217 3.217,-3.217l6.434,0c1.776,0 3.217,1.441 3.217,3.217l0,20.679l14.123,0l0,-20.679c0,-1.776 1.441,-3.217 3.217,-3.217l6.434,0c1.775,0 3.217,1.441 3.217,3.217l0,20.679l4.548,0c15.366,0 27.841,12.475 27.841,27.841l0,4.548l20.679,0c1.776,0.001 3.217,1.442 3.217,3.217l0,6.434c0,1.775 -1.441,3.217 -3.217,3.217l-20.679,0l0,14.123l20.679,0c1.776,0.001 3.217,1.442 3.217,3.217l0,6.434c0,1.775 -1.441,3.216 -3.217,3.217l-20.679,0l0,14.123l20.679,0c1.776,0 3.217,1.442 3.217,3.217l0,6.434c0,1.775 -1.441,3.216 -3.217,3.216l-20.679,0l0,14.123l20.679,0c1.776,0.001 3.217,1.442 3.217,3.217l0,6.434c0,1.775 -1.441,3.217 -3.217,3.217l-20.679,0l0,14.123l20.679,0c1.776,0.001 3.217,1.442 3.217,3.217l0,6.434c0,1.775 -1.441,3.216 -3.217,3.217l-20.679,0l0,4.548c0,15.366 -12.475,27.841 -27.841,27.841l-4.548,0l0,20.679c0,1.776 -1.441,3.217 -3.217,3.217l-6.434,0c-1.776,0 -3.217,-1.441 -3.217,-3.217l0,-20.679l-14.123,0l0,20.679c0,1.776 -1.441,3.217 -3.217,3.217l-6.434,0c-1.775,0 -3.217,-1.441 -3.217,-3.217l0,-20.679l-14.123,0l0,20.679c0,1.776 -1.441,3.217 -3.217,3.217l-6.433,0c-1.776,0 -3.217,-1.441 -3.217,-3.217l0,-20.679l-14.123,0l0,20.679c0,1.776 -1.441,3.217 -3.217,3.217l-6.434,0c-1.775,0 -3.217,-1.441 -3.217,-3.217l0,-20.679l-14.123,0l0,20.679c0,1.776 -1.441,3.217 -3.217,3.217Zm103.74,-127.253c0,6.774 -1.062,12.845 -3.187,18.213c-2.124,5.368 -5.152,9.946 -9.085,13.735c-3.932,3.789 -8.697,6.717 -14.295,8.784c-5.597,2.067 -11.927,3.186 -18.988,3.359l0,20.581c0,0.459 -0.115,0.861 -0.345,1.206c-0.229,0.344 -0.631,0.617 -1.205,0.818c-0.574,0.201 -1.335,0.358 -2.282,0.473c-0.947,0.115 -2.139,0.173 -3.574,0.173c-1.435,0 -2.626,-0.058 -3.574,-0.173c-0.947,-0.115 -1.693,-0.272 -2.239,-0.473c-0.545,-0.201 -0.947,-0.474 -1.205,-0.818c-0.259,-0.345 -0.388,-0.747 -0.388,-1.206l0,-20.581c-7.176,-0.173 -13.577,-1.206 -19.203,-3.101c-5.627,-1.894 -10.392,-4.635 -14.295,-8.224c-3.904,-3.588 -6.89,-7.994 -8.956,-13.218c-2.067,-5.224 -3.101,-11.224 -3.101,-17.998l0,-44.005c0,-0.402 0.13,-0.775 0.388,-1.119c0.258,-0.345 0.66,-0.632 1.206,-0.861c0.545,-0.23 1.291,-0.402 2.239,-0.517c0.947,-0.115 2.138,-0.172 3.573,-0.172c1.436,0 2.627,0.057 3.574,0.172c0.947,0.115 1.708,0.287 2.282,0.517c0.574,0.229 0.976,0.516 1.206,0.861c0.229,0.344 0.344,0.717 0.344,1.119l0,42.713c0,4.765 0.632,9.057 1.895,12.874c1.263,3.818 3.157,7.062 5.683,9.731c2.526,2.67 5.727,4.737 9.602,6.201c3.875,1.463 8.396,2.253 13.563,2.368l0,-73.887c0,-0.402 0.129,-0.775 0.388,-1.119c0.258,-0.345 0.689,-0.632 1.291,-0.861c0.603,-0.23 1.378,-0.402 2.326,-0.517c0.947,-0.115 2.081,-0.172 3.401,-0.172c1.435,0 2.627,0.057 3.574,0.172c0.947,0.115 1.708,0.287 2.282,0.517c0.574,0.229 0.976,0.516 1.205,0.861c0.23,0.344 0.345,0.717 0.345,1.119l0,73.887c5.167,-0.058 9.673,-0.847 13.52,-2.368c3.846,-1.522 7.047,-3.617 9.602,-6.287c2.554,-2.669 4.478,-5.884 5.769,-9.645c1.292,-3.76 1.938,-7.937 1.938,-12.529l0,-43.058c0,-0.402 0.115,-0.775 0.344,-1.119c0.23,-0.345 0.632,-0.632 1.206,-0.861c0.574,-0.23 1.321,-0.402 2.239,-0.517c0.919,-0.115 2.124,-0.172 3.617,-0.172c1.378,0 2.54,0.057 3.488,0.172c0.947,0.115 1.693,0.287 2.239,0.517c0.545,0.229 0.947,0.516 1.205,0.861c0.258,0.344 0.388,0.717 0.388,1.119l0,42.455Z" style="fill:#fff;"/><path d="M426.392,189.328c0,1.077 -0.059,1.978 -0.176,2.704c-0.117,0.726 -0.293,1.288 -0.527,1.686c-0.234,0.398 -0.491,0.668 -0.772,0.808c-0.281,0.141 -0.563,0.211 -0.844,0.211c-0.936,0 -2.447,-0.386 -4.531,-1.159c-2.084,-0.773 -4.484,-1.897 -7.201,-3.372c-2.716,-1.476 -5.62,-3.267 -8.711,-5.375c-3.092,-2.107 -6.089,-4.566 -8.993,-7.376c-2.295,1.405 -5.199,2.622 -8.711,3.653c-3.513,1.03 -7.588,1.545 -12.224,1.545c-6.839,0 -12.752,-1.007 -17.74,-3.021c-4.988,-2.013 -9.109,-4.964 -12.364,-8.851c-3.255,-3.888 -5.679,-8.724 -7.272,-14.508c-1.592,-5.784 -2.388,-12.423 -2.388,-19.917c0,-7.213 0.866,-13.734 2.599,-19.566c1.733,-5.831 4.333,-10.795 7.798,-14.893c3.466,-4.098 7.799,-7.26 12.997,-9.485c5.199,-2.224 11.264,-3.337 18.196,-3.337c6.51,0 12.236,1.007 17.177,3.021c4.941,2.014 9.086,4.953 12.435,8.817c3.349,3.864 5.866,8.63 7.552,14.297c1.686,5.667 2.529,12.177 2.529,19.53c0,3.794 -0.222,7.424 -0.667,10.89c-0.445,3.466 -1.147,6.744 -2.108,9.835c-0.96,3.091 -2.166,5.948 -3.618,8.571c-1.452,2.623 -3.161,4.988 -5.128,7.096c3.419,2.81 6.416,5 8.992,6.569c2.576,1.569 4.707,2.751 6.393,3.547c1.687,0.797 2.998,1.37 3.935,1.722c0.936,0.351 1.639,0.749 2.107,1.194c0.469,0.445 0.796,1.077 0.984,1.897c0.187,0.819 0.281,1.908 0.281,3.267Zm-23.886,-53.745c0,-5.152 -0.457,-9.929 -1.37,-14.331c-0.914,-4.403 -2.436,-8.232 -4.567,-11.487c-2.131,-3.255 -4.976,-5.796 -8.536,-7.622c-3.559,-1.827 -7.962,-2.74 -13.207,-2.74c-5.246,0 -9.649,0.972 -13.208,2.915c-3.56,1.944 -6.452,4.567 -8.676,7.869c-2.225,3.302 -3.818,7.13 -4.778,11.486c-0.96,4.356 -1.44,8.969 -1.44,13.84c0,5.339 0.445,10.245 1.335,14.718c0.89,4.473 2.389,8.349 4.496,11.627c2.108,3.279 4.93,5.82 8.466,7.623c3.536,1.803 7.974,2.705 13.313,2.705c5.292,0 9.742,-0.984 13.348,-2.951c3.606,-1.967 6.51,-4.625 8.711,-7.974c2.202,-3.349 3.771,-7.236 4.707,-11.662c0.937,-4.426 1.406,-9.098 1.406,-14.016Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M534.723,179.492c0,0.375 -0.096,0.703 -0.289,0.984c-0.193,0.281 -0.531,0.503 -1.013,0.667c-0.483,0.164 -1.098,0.304 -1.846,0.421c-0.747,0.118 -1.724,0.176 -2.93,0.176c-1.109,0 -2.062,-0.058 -2.858,-0.176c-0.796,-0.117 -1.423,-0.257 -1.881,-0.421c-0.459,-0.164 -0.784,-0.386 -0.977,-0.667c-0.193,-0.281 -0.289,-0.609 -0.289,-0.984l0,-79.176l-0.141,0l-32.036,79.527c-0.14,0.328 -0.339,0.609 -0.597,0.843c-0.257,0.234 -0.632,0.434 -1.124,0.597c-0.492,0.164 -1.077,0.281 -1.756,0.352c-0.679,0.07 -1.487,0.105 -2.424,0.105c-0.984,0 -1.827,-0.047 -2.529,-0.14c-0.703,-0.094 -1.288,-0.223 -1.756,-0.387c-0.469,-0.164 -0.832,-0.363 -1.089,-0.597c-0.258,-0.234 -0.434,-0.492 -0.527,-0.773l-30.631,-79.527l-0.07,0l0,79.176c0,0.375 -0.097,0.703 -0.289,0.984c-0.193,0.281 -0.531,0.503 -1.014,0.667c-0.482,0.164 -1.109,0.304 -1.881,0.421c-0.772,0.118 -1.761,0.176 -2.967,0.176c-1.157,0 -2.122,-0.058 -2.894,-0.176c-0.772,-0.117 -1.387,-0.257 -1.845,-0.421c-0.459,-0.164 -0.772,-0.386 -0.941,-0.667c-0.169,-0.281 -0.253,-0.609 -0.253,-0.984l0,-83.602c0,-1.967 0.523,-3.372 1.569,-4.215c1.046,-0.843 2.212,-1.265 3.496,-1.265l7.419,0c1.522,0 2.853,0.141 3.995,0.422c1.142,0.281 2.14,0.726 2.996,1.335c0.856,0.608 1.569,1.381 2.14,2.318c0.571,0.937 1.07,2.037 1.499,3.302l25.994,65.828l0.351,0l27.047,-65.617c0.524,-1.405 1.095,-2.6 1.713,-3.583c0.619,-0.984 1.297,-1.768 2.035,-2.354c0.738,-0.585 1.558,-1.007 2.462,-1.264c0.904,-0.258 1.951,-0.387 3.141,-0.387l7.779,0c0.715,0 1.393,0.106 2.035,0.316c0.642,0.211 1.189,0.539 1.642,0.984c0.452,0.445 0.821,1.007 1.106,1.686c0.285,0.679 0.428,1.51 0.428,2.494l0,83.602Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M618.185,179.351c0,0.375 -0.082,0.715 -0.246,1.019c-0.164,0.305 -0.48,0.55 -0.949,0.738c-0.468,0.187 -1.1,0.339 -1.896,0.456c-0.797,0.118 -1.827,0.176 -3.092,0.176c-1.639,0 -2.974,-0.07 -4.004,-0.211c-1.031,-0.14 -1.803,-0.398 -2.318,-0.772c-0.516,-0.375 -0.937,-0.797 -1.265,-1.265l-33.441,-45.454l0,45.454c0,0.328 -0.094,0.644 -0.281,0.948c-0.187,0.305 -0.515,0.539 -0.983,0.703c-0.469,0.164 -1.089,0.304 -1.862,0.421c-0.773,0.118 -1.745,0.176 -2.916,0.176c-1.124,0 -2.084,-0.058 -2.88,-0.176c-0.796,-0.117 -1.429,-0.257 -1.897,-0.421c-0.468,-0.164 -0.796,-0.398 -0.983,-0.703c-0.188,-0.304 -0.282,-0.62 -0.282,-0.948l0,-87.255c0,-0.375 0.094,-0.703 0.282,-0.984c0.187,-0.281 0.515,-0.503 0.983,-0.667c0.468,-0.164 1.101,-0.305 1.897,-0.422c0.796,-0.117 1.756,-0.175 2.88,-0.175c1.171,0 2.143,0.058 2.916,0.175c0.773,0.117 1.393,0.258 1.862,0.422c0.468,0.164 0.796,0.386 0.983,0.667c0.187,0.281 0.281,0.609 0.281,0.984l0,40.396l32.176,-40.396c0.281,-0.422 0.609,-0.773 0.984,-1.054c0.375,-0.281 0.831,-0.504 1.37,-0.667c0.538,-0.164 1.194,-0.293 1.967,-0.387c0.773,-0.094 1.768,-0.14 2.986,-0.14c1.218,0 2.201,0.058 2.95,0.175c0.75,0.117 1.347,0.27 1.792,0.457c0.445,0.187 0.749,0.421 0.913,0.702c0.164,0.282 0.246,0.586 0.246,0.914c0,0.609 -0.152,1.218 -0.457,1.826c-0.304,0.609 -0.878,1.452 -1.721,2.53l-30.139,36.04l32.458,43.136c0.796,1.217 1.276,2.049 1.44,2.494c0.164,0.444 0.246,0.807 0.246,1.088Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M713.941,95.609c0,0.89 -0.047,1.663 -0.141,2.318c-0.094,0.656 -0.258,1.183 -0.492,1.581c-0.234,0.398 -0.503,0.691 -0.808,0.878c-0.304,0.188 -0.62,0.281 -0.948,0.281l-33.3,0l0,30.912l31.473,0c0.328,0 0.644,0.082 0.949,0.246c0.304,0.164 0.574,0.433 0.808,0.808c0.234,0.374 0.398,0.878 0.491,1.51c0.094,0.632 0.141,1.44 0.141,2.424c0,0.89 -0.047,1.651 -0.141,2.283c-0.093,0.632 -0.257,1.148 -0.491,1.546c-0.234,0.398 -0.504,0.702 -0.808,0.913c-0.305,0.211 -0.621,0.316 -0.949,0.316l-31.473,0l0,37.867c0,0.328 -0.094,0.644 -0.281,0.948c-0.188,0.305 -0.516,0.539 -0.984,0.703c-0.468,0.164 -1.077,0.304 -1.826,0.421c-0.75,0.118 -1.733,0.176 -2.951,0.176c-1.124,0 -2.084,-0.058 -2.881,-0.176c-0.796,-0.117 -1.428,-0.257 -1.896,-0.421c-0.469,-0.164 -0.797,-0.398 -0.984,-0.703c-0.187,-0.304 -0.281,-0.62 -0.281,-0.948l0,-84.164c0,-1.827 0.48,-3.103 1.44,-3.829c0.96,-0.726 1.979,-1.089 3.056,-1.089l40.888,0c0.328,0 0.644,0.094 0.948,0.281c0.305,0.188 0.574,0.492 0.808,0.914c0.234,0.421 0.398,0.971 0.492,1.65c0.094,0.68 0.141,1.464 0.141,2.354Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M742.534,179.562c0,0.375 -0.094,0.691 -0.281,0.949c-0.187,0.257 -0.492,0.48 -0.913,0.667c-0.422,0.187 -1.007,0.328 -1.757,0.422c-0.749,0.093 -1.709,0.14 -2.88,0.14c-1.124,0 -2.061,-0.047 -2.81,-0.14c-0.75,-0.094 -1.347,-0.235 -1.792,-0.422c-0.445,-0.187 -0.749,-0.41 -0.913,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-63.228c0,-0.328 0.082,-0.632 0.246,-0.913c0.164,-0.281 0.468,-0.516 0.913,-0.703c0.445,-0.187 1.042,-0.328 1.792,-0.422c0.749,-0.093 1.686,-0.14 2.81,-0.14c1.171,0 2.131,0.047 2.88,0.14c0.75,0.094 1.335,0.235 1.757,0.422c0.421,0.187 0.726,0.422 0.913,0.703c0.187,0.281 0.281,0.585 0.281,0.913l0,63.228Zm1.335,-84.585c0,2.716 -0.515,4.566 -1.546,5.55c-1.03,0.983 -2.927,1.475 -5.69,1.475c-2.717,0 -4.579,-0.48 -5.586,-1.44c-1.007,-0.96 -1.51,-2.775 -1.51,-5.445c0,-2.716 0.515,-4.566 1.546,-5.55c1.03,-0.983 2.927,-1.475 5.69,-1.475c2.717,0 4.578,0.48 5.585,1.44c1.007,0.96 1.511,2.775 1.511,5.445Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M800.915,120.479c0,1.03 -0.024,1.897 -0.07,2.599c-0.047,0.703 -0.141,1.253 -0.281,1.651c-0.141,0.398 -0.317,0.703 -0.527,0.913c-0.211,0.211 -0.504,0.317 -0.879,0.317c-0.374,0 -0.831,-0.106 -1.37,-0.317c-0.538,-0.21 -1.147,-0.421 -1.826,-0.632c-0.679,-0.211 -1.44,-0.41 -2.283,-0.597c-0.843,-0.187 -1.757,-0.281 -2.74,-0.281c-1.171,0 -2.319,0.234 -3.443,0.703c-1.124,0.468 -2.306,1.241 -3.548,2.318c-1.241,1.077 -2.54,2.506 -3.899,4.285c-1.358,1.78 -2.857,3.958 -4.496,6.534l0,41.59c0,0.375 -0.094,0.691 -0.281,0.949c-0.187,0.257 -0.492,0.48 -0.913,0.667c-0.422,0.187 -1.007,0.328 -1.756,0.422c-0.75,0.093 -1.71,0.14 -2.881,0.14c-1.124,0 -2.061,-0.047 -2.81,-0.14c-0.749,-0.094 -1.347,-0.235 -1.792,-0.422c-0.444,-0.187 -0.749,-0.41 -0.913,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-63.228c0,-0.375 0.071,-0.691 0.211,-0.949c0.141,-0.257 0.422,-0.491 0.843,-0.702c0.422,-0.211 0.96,-0.351 1.616,-0.422c0.656,-0.07 1.522,-0.105 2.599,-0.105c1.031,0 1.885,0.035 2.565,0.105c0.679,0.071 1.206,0.211 1.58,0.422c0.375,0.211 0.644,0.445 0.808,0.702c0.164,0.258 0.246,0.574 0.246,0.949l0,9.203c1.733,-2.529 3.361,-4.59 4.883,-6.182c1.522,-1.593 2.962,-2.846 4.32,-3.759c1.359,-0.913 2.705,-1.545 4.04,-1.897c1.335,-0.351 2.681,-0.527 4.04,-0.527c0.608,0 1.299,0.036 2.072,0.106c0.773,0.07 1.581,0.199 2.424,0.386c0.843,0.188 1.604,0.398 2.283,0.632c0.679,0.235 1.159,0.469 1.44,0.703c0.281,0.234 0.469,0.457 0.562,0.667c0.094,0.211 0.176,0.48 0.246,0.808c0.07,0.328 0.117,0.808 0.141,1.441c0.023,0.632 0.035,1.487 0.035,2.564Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M907.911,179.562c0,0.375 -0.093,0.691 -0.281,0.949c-0.187,0.257 -0.491,0.48 -0.913,0.667c-0.422,0.187 -1.007,0.328 -1.756,0.422c-0.75,0.093 -1.686,0.14 -2.811,0.14c-1.17,0 -2.131,-0.047 -2.88,-0.14c-0.749,-0.094 -1.346,-0.235 -1.791,-0.422c-0.445,-0.187 -0.761,-0.41 -0.949,-0.667c-0.187,-0.258 -0.281,-0.574 -0.281,-0.949l0,-38.429c0,-2.669 -0.234,-5.105 -0.702,-7.306c-0.469,-2.201 -1.218,-4.098 -2.248,-5.691c-1.031,-1.592 -2.342,-2.81 -3.935,-3.653c-1.592,-0.843 -3.466,-1.264 -5.62,-1.264c-2.67,0 -5.351,1.03 -8.044,3.091c-2.693,2.061 -5.655,5.082 -8.887,9.063l0,44.189c0,0.375 -0.094,0.691 -0.281,0.949c-0.188,0.257 -0.504,0.48 -0.949,0.667c-0.445,0.187 -1.042,0.328 -1.791,0.422c-0.749,0.093 -1.686,0.14 -2.81,0.14c-1.077,0 -2.002,-0.047 -2.775,-0.14c-0.773,-0.094 -1.382,-0.235 -1.827,-0.422c-0.445,-0.187 -0.749,-0.41 -0.913,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-38.429c0,-2.669 -0.258,-5.105 -0.773,-7.306c-0.515,-2.201 -1.288,-4.098 -2.318,-5.691c-1.031,-1.592 -2.33,-2.81 -3.899,-3.653c-1.569,-0.843 -3.431,-1.264 -5.585,-1.264c-2.67,0 -5.363,1.03 -8.08,3.091c-2.716,2.061 -5.667,5.082 -8.852,9.063l0,44.189c0,0.375 -0.093,0.691 -0.281,0.949c-0.187,0.257 -0.491,0.48 -0.913,0.667c-0.421,0.187 -1.007,0.328 -1.756,0.422c-0.75,0.093 -1.71,0.14 -2.881,0.14c-1.124,0 -2.06,-0.047 -2.81,-0.14c-0.749,-0.094 -1.346,-0.235 -1.791,-0.422c-0.445,-0.187 -0.75,-0.41 -0.914,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-63.228c0,-0.375 0.071,-0.691 0.211,-0.949c0.141,-0.257 0.422,-0.491 0.843,-0.702c0.422,-0.211 0.96,-0.351 1.616,-0.422c0.656,-0.07 1.522,-0.105 2.6,-0.105c1.03,0 1.885,0.035 2.564,0.105c0.679,0.071 1.206,0.211 1.581,0.422c0.374,0.211 0.643,0.445 0.807,0.702c0.164,0.258 0.246,0.574 0.246,0.949l0,8.36c3.56,-3.981 7.014,-6.897 10.363,-8.747c3.349,-1.85 6.732,-2.775 10.151,-2.775c2.623,0 4.977,0.305 7.061,0.914c2.084,0.609 3.922,1.463 5.515,2.564c1.592,1.101 2.951,2.412 4.075,3.934c1.124,1.522 2.06,3.22 2.81,5.094c2.107,-2.295 4.11,-4.239 6.006,-5.831c1.897,-1.593 3.724,-2.881 5.48,-3.864c1.757,-0.984 3.466,-1.698 5.129,-2.143c1.662,-0.445 3.337,-0.668 5.023,-0.668c4.075,0 7.494,0.715 10.257,2.143c2.763,1.429 5,3.337 6.709,5.726c1.71,2.388 2.927,5.187 3.653,8.395c0.726,3.208 1.089,6.592 1.089,10.152l0,39.974Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1016.52,116.193c0,0.328 -0.047,0.726 -0.141,1.195c-0.094,0.468 -0.257,1.053 -0.492,1.756l-18.617,60.067c-0.14,0.515 -0.363,0.937 -0.667,1.265c-0.305,0.327 -0.726,0.585 -1.265,0.772c-0.538,0.188 -1.276,0.316 -2.213,0.387c-0.937,0.07 -2.107,0.105 -3.513,0.105c-1.451,0 -2.669,-0.047 -3.653,-0.14c-0.983,-0.094 -1.768,-0.235 -2.353,-0.422c-0.586,-0.187 -1.019,-0.445 -1.3,-0.773c-0.281,-0.328 -0.492,-0.726 -0.632,-1.194l-13.278,-45.876l-0.141,-0.632l-0.14,0.632l-12.295,45.876c-0.14,0.515 -0.363,0.937 -0.667,1.265c-0.304,0.327 -0.761,0.585 -1.37,0.772c-0.609,0.188 -1.393,0.316 -2.353,0.387c-0.961,0.07 -2.143,0.105 -3.548,0.105c-1.452,0 -2.635,-0.047 -3.548,-0.14c-0.913,-0.094 -1.663,-0.235 -2.248,-0.422c-0.586,-0.187 -1.019,-0.445 -1.3,-0.773c-0.281,-0.328 -0.492,-0.726 -0.632,-1.194l-18.477,-60.067c-0.234,-0.703 -0.398,-1.288 -0.492,-1.756c-0.093,-0.469 -0.14,-0.867 -0.14,-1.195c0,-0.421 0.093,-0.761 0.281,-1.018c0.187,-0.258 0.503,-0.469 0.948,-0.633c0.445,-0.164 1.042,-0.269 1.792,-0.316c0.749,-0.047 1.662,-0.07 2.74,-0.07c1.311,0 2.365,0.035 3.161,0.105c0.796,0.071 1.405,0.188 1.827,0.352c0.421,0.164 0.726,0.398 0.913,0.702c0.187,0.305 0.351,0.668 0.492,1.089l15.245,52.128l0.14,0.633l0.141,-0.633l13.98,-52.128c0.094,-0.421 0.246,-0.784 0.457,-1.089c0.211,-0.304 0.527,-0.538 0.948,-0.702c0.422,-0.164 0.996,-0.281 1.722,-0.352c0.726,-0.07 1.674,-0.105 2.845,-0.105c1.124,0 2.049,0.035 2.775,0.105c0.726,0.071 1.3,0.188 1.721,0.352c0.422,0.164 0.726,0.386 0.913,0.667c0.188,0.281 0.328,0.609 0.422,0.984l15.104,52.268l0.141,0.633l0.07,-0.633l15.035,-52.128c0.093,-0.421 0.245,-0.784 0.456,-1.089c0.211,-0.304 0.539,-0.538 0.984,-0.702c0.445,-0.164 1.054,-0.281 1.826,-0.352c0.773,-0.07 1.768,-0.105 2.986,-0.105c1.124,0 2.026,0.023 2.705,0.07c0.679,0.047 1.218,0.164 1.616,0.351c0.398,0.188 0.679,0.399 0.843,0.633c0.164,0.234 0.246,0.562 0.246,0.983Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1076.94,179.632c0,0.563 -0.187,0.984 -0.562,1.265c-0.375,0.281 -0.89,0.492 -1.546,0.632c-0.655,0.141 -1.616,0.211 -2.88,0.211c-1.218,0 -2.19,-0.07 -2.916,-0.211c-0.726,-0.14 -1.252,-0.351 -1.58,-0.632c-0.328,-0.281 -0.492,-0.702 -0.492,-1.265l0,-6.322c-2.763,2.95 -5.843,5.245 -9.238,6.885c-3.396,1.639 -6.991,2.458 -10.784,2.458c-3.326,0 -6.335,-0.433 -9.028,-1.299c-2.693,-0.867 -4.988,-2.12 -6.885,-3.759c-1.897,-1.639 -3.372,-3.653 -4.426,-6.042c-1.054,-2.388 -1.581,-5.105 -1.581,-8.149c0,-3.56 0.726,-6.651 2.178,-9.274c1.452,-2.622 3.536,-4.8 6.253,-6.533c2.716,-1.733 6.042,-3.033 9.976,-3.899c3.934,-0.867 8.36,-1.3 13.278,-1.3l8.711,0l0,-4.918c0,-2.435 -0.257,-4.59 -0.772,-6.463c-0.516,-1.874 -1.347,-3.431 -2.495,-4.672c-1.147,-1.241 -2.634,-2.178 -4.461,-2.81c-1.826,-0.632 -4.074,-0.949 -6.744,-0.949c-2.857,0 -5.421,0.34 -7.693,1.019c-2.271,0.679 -4.262,1.429 -5.971,2.248c-1.71,0.82 -3.138,1.569 -4.286,2.248c-1.147,0.679 -2.002,1.019 -2.564,1.019c-0.375,0 -0.703,-0.094 -0.984,-0.281c-0.281,-0.187 -0.527,-0.468 -0.737,-0.843c-0.211,-0.375 -0.363,-0.855 -0.457,-1.44c-0.094,-0.586 -0.14,-1.23 -0.14,-1.932c0,-1.171 0.081,-2.096 0.245,-2.775c0.164,-0.679 0.562,-1.323 1.195,-1.932c0.632,-0.609 1.721,-1.323 3.267,-2.143c1.545,-0.82 3.325,-1.569 5.339,-2.248c2.014,-0.679 4.215,-1.241 6.604,-1.686c2.388,-0.445 4.8,-0.668 7.236,-0.668c4.543,0 8.407,0.516 11.592,1.546c3.185,1.03 5.761,2.541 7.728,4.531c1.967,1.991 3.395,4.461 4.285,7.412c0.89,2.951 1.335,6.393 1.335,10.327l0,42.644Zm-11.522,-28.874l-9.905,0c-3.185,0 -5.949,0.269 -8.29,0.808c-2.342,0.539 -4.286,1.335 -5.832,2.389c-1.545,1.054 -2.681,2.318 -3.407,3.793c-0.726,1.476 -1.089,3.174 -1.089,5.094c0,3.278 1.042,5.889 3.127,7.833c2.084,1.944 4.999,2.916 8.746,2.916c3.044,0 5.866,-0.773 8.466,-2.319c2.599,-1.545 5.327,-3.91 8.184,-7.095l0,-13.419Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1135.18,120.479c0,1.03 -0.023,1.897 -0.07,2.599c-0.047,0.703 -0.14,1.253 -0.281,1.651c-0.14,0.398 -0.316,0.703 -0.527,0.913c-0.211,0.211 -0.503,0.317 -0.878,0.317c-0.375,0 -0.831,-0.106 -1.37,-0.317c-0.539,-0.21 -1.147,-0.421 -1.827,-0.632c-0.679,-0.211 -1.44,-0.41 -2.283,-0.597c-0.843,-0.187 -1.756,-0.281 -2.74,-0.281c-1.171,0 -2.318,0.234 -3.442,0.703c-1.124,0.468 -2.307,1.241 -3.548,2.318c-1.241,1.077 -2.541,2.506 -3.899,4.285c-1.358,1.78 -2.857,3.958 -4.496,6.534l0,41.59c0,0.375 -0.094,0.691 -0.281,0.949c-0.188,0.257 -0.492,0.48 -0.914,0.667c-0.421,0.187 -1.007,0.328 -1.756,0.422c-0.749,0.093 -1.709,0.14 -2.88,0.14c-1.124,0 -2.061,-0.047 -2.811,-0.14c-0.749,-0.094 -1.346,-0.235 -1.791,-0.422c-0.445,-0.187 -0.749,-0.41 -0.913,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-63.228c0,-0.375 0.07,-0.691 0.211,-0.949c0.14,-0.257 0.421,-0.491 0.843,-0.702c0.421,-0.211 0.96,-0.351 1.615,-0.422c0.656,-0.07 1.523,-0.105 2.6,-0.105c1.03,0 1.885,0.035 2.564,0.105c0.679,0.071 1.206,0.211 1.581,0.422c0.375,0.211 0.644,0.445 0.808,0.702c0.164,0.258 0.246,0.574 0.246,0.949l0,9.203c1.733,-2.529 3.36,-4.59 4.882,-6.182c1.522,-1.593 2.963,-2.846 4.321,-3.759c1.358,-0.913 2.705,-1.545 4.039,-1.897c1.335,-0.351 2.682,-0.527 4.04,-0.527c0.609,0 1.3,0.036 2.073,0.106c0.772,0.07 1.58,0.199 2.423,0.386c0.843,0.188 1.604,0.398 2.284,0.632c0.679,0.235 1.159,0.469 1.44,0.703c0.281,0.234 0.468,0.457 0.562,0.667c0.093,0.211 0.175,0.48 0.246,0.808c0.07,0.328 0.117,0.808 0.14,1.441c0.024,0.632 0.035,1.487 0.035,2.564Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1200.45,145.208c0,1.827 -0.459,3.126 -1.376,3.899c-0.917,0.773 -1.964,1.159 -3.141,1.159l-41.64,0c0,3.513 0.353,6.675 1.059,9.485c0.706,2.81 1.882,5.222 3.53,7.236c1.647,2.014 3.789,3.559 6.424,4.637c2.636,1.077 5.86,1.615 9.672,1.615c3.012,0 5.694,-0.245 8.047,-0.737c2.354,-0.492 4.389,-1.042 6.107,-1.651c1.718,-0.609 3.13,-1.159 4.236,-1.651c1.106,-0.492 1.942,-0.738 2.507,-0.738c0.329,0 0.623,0.082 0.882,0.246c0.259,0.164 0.458,0.41 0.6,0.738c0.141,0.328 0.247,0.784 0.317,1.37c0.071,0.585 0.106,1.299 0.106,2.142c0,0.609 -0.023,1.136 -0.07,1.581c-0.047,0.445 -0.105,0.843 -0.175,1.194c-0.071,0.352 -0.188,0.668 -0.352,0.949c-0.164,0.281 -0.374,0.55 -0.632,0.808c-0.258,0.257 -1.019,0.679 -2.283,1.264c-1.265,0.586 -2.904,1.16 -4.918,1.722c-2.014,0.562 -4.344,1.065 -6.99,1.51c-2.647,0.445 -5.468,0.667 -8.466,0.667c-5.199,0 -9.753,-0.726 -13.664,-2.177c-3.911,-1.452 -7.201,-3.607 -9.871,-6.464c-2.67,-2.857 -4.683,-6.44 -6.042,-10.749c-1.358,-4.309 -2.037,-9.32 -2.037,-15.034c0,-5.433 0.702,-10.316 2.108,-14.648c1.405,-4.332 3.43,-8.009 6.077,-11.03c2.646,-3.021 5.842,-5.339 9.589,-6.955c3.747,-1.616 7.939,-2.424 12.576,-2.424c4.964,0 9.191,0.797 12.68,2.389c3.49,1.592 6.358,3.735 8.606,6.428c2.249,2.693 3.9,5.855 4.953,9.485c1.054,3.629 1.581,7.505 1.581,11.627l0,2.107Zm-11.662,-3.442c0.14,-6.089 -1.214,-10.866 -4.065,-14.332c-2.85,-3.466 -7.079,-5.199 -12.687,-5.199c-2.875,0 -5.396,0.539 -7.564,1.616c-2.167,1.077 -3.982,2.506 -5.443,4.285c-1.461,1.78 -2.592,3.853 -3.393,6.218c-0.801,2.365 -1.248,4.836 -1.343,7.412l34.495,0Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M379.752,276.089c0,0.493 -0.016,0.924 -0.047,1.294c-0.03,0.369 -0.084,0.693 -0.161,0.97c-0.077,0.277 -0.177,0.524 -0.301,0.739c-0.123,0.216 -0.338,0.478 -0.646,0.786c-0.308,0.308 -0.955,0.778 -1.941,1.409c-0.986,0.631 -2.21,1.247 -3.673,1.848c-1.463,0.601 -3.142,1.109 -5.036,1.525c-1.894,0.416 -3.966,0.623 -6.214,0.623c-3.881,0 -7.385,-0.646 -10.511,-1.94c-3.127,-1.294 -5.791,-3.203 -7.993,-5.729c-2.203,-2.526 -3.897,-5.645 -5.083,-9.356c-1.185,-3.712 -1.778,-7.985 -1.778,-12.821c0,-4.959 0.639,-9.379 1.917,-13.26c1.278,-3.881 3.072,-7.169 5.383,-9.865c2.31,-2.695 5.074,-4.751 8.293,-6.168c3.219,-1.417 6.784,-2.125 10.696,-2.125c1.725,0 3.403,0.162 5.036,0.485c1.632,0.324 3.142,0.732 4.528,1.225c1.386,0.492 2.618,1.062 3.696,1.709c1.078,0.647 1.825,1.178 2.241,1.594c0.416,0.416 0.685,0.732 0.808,0.947c0.123,0.216 0.224,0.47 0.301,0.763c0.077,0.292 0.138,0.639 0.184,1.039c0.047,0.4 0.07,0.878 0.07,1.432c0,0.616 -0.031,1.14 -0.093,1.571c-0.062,0.431 -0.155,0.793 -0.279,1.086c-0.124,0.293 -0.271,0.508 -0.441,0.647c-0.171,0.138 -0.38,0.208 -0.628,0.208c-0.433,0 -1.036,-0.301 -1.811,-0.901c-0.774,-0.601 -1.773,-1.263 -2.996,-1.987c-1.223,-0.724 -2.71,-1.386 -4.459,-1.987c-1.749,-0.6 -3.847,-0.901 -6.294,-0.901c-2.663,0 -5.086,0.532 -7.269,1.594c-2.183,1.063 -4.049,2.626 -5.597,4.69c-1.549,2.064 -2.748,4.582 -3.6,7.554c-0.852,2.972 -1.278,6.368 -1.278,10.188c0,3.788 0.411,7.138 1.231,10.049c0.821,2.91 1.998,5.344 3.53,7.3c1.533,1.956 3.415,3.434 5.644,4.435c2.23,1.001 4.753,1.502 7.571,1.502c2.384,0 4.467,-0.293 6.247,-0.878c1.781,-0.585 3.298,-1.24 4.552,-1.964c1.254,-0.724 2.283,-1.378 3.089,-1.963c0.805,-0.586 1.44,-0.878 1.904,-0.878c0.217,0 0.403,0.046 0.558,0.138c0.154,0.093 0.278,0.27 0.371,0.532c0.093,0.262 0.163,0.623 0.209,1.085c0.046,0.462 0.07,1.048 0.07,1.756Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M428.079,262.136c0,3.388 -0.446,6.507 -1.339,9.356c-0.894,2.849 -2.226,5.306 -3.997,7.369c-1.771,2.064 -3.989,3.673 -6.653,4.828c-2.664,1.156 -5.752,1.733 -9.264,1.733c-3.419,0 -6.399,-0.508 -8.94,-1.525c-2.541,-1.016 -4.659,-2.495 -6.353,-4.435c-1.694,-1.941 -2.957,-4.297 -3.788,-7.069c-0.832,-2.772 -1.248,-5.914 -1.248,-9.425c0,-3.388 0.439,-6.507 1.317,-9.356c0.878,-2.849 2.202,-5.306 3.973,-7.37c1.772,-2.063 3.982,-3.665 6.63,-4.805c2.649,-1.139 5.745,-1.709 9.287,-1.709c3.419,0 6.399,0.508 8.94,1.525c2.541,1.016 4.659,2.494 6.353,4.435c1.694,1.94 2.965,4.297 3.812,7.069c0.847,2.772 1.27,5.898 1.27,9.379Zm-7.9,0.508c0,-2.248 -0.21,-4.374 -0.63,-6.376c-0.419,-2.002 -1.111,-3.757 -2.074,-5.267c-0.964,-1.509 -2.269,-2.703 -3.917,-3.58c-1.647,-0.878 -3.698,-1.317 -6.153,-1.317c-2.269,0 -4.219,0.4 -5.851,1.201c-1.632,0.801 -2.976,1.933 -4.033,3.396c-1.056,1.463 -1.841,3.196 -2.354,5.198c-0.513,2.002 -0.769,4.189 -0.769,6.56c0,2.28 0.21,4.42 0.629,6.423c0.42,2.002 1.119,3.75 2.098,5.244c0.979,1.493 2.292,2.679 3.939,3.557c1.648,0.878 3.699,1.317 6.154,1.317c2.238,0 4.181,-0.401 5.828,-1.201c1.647,-0.801 2.999,-1.925 4.056,-3.373c1.056,-1.448 1.833,-3.173 2.331,-5.175c0.497,-2.002 0.746,-4.204 0.746,-6.607Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M500.987,283.389c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.493,0.062 -1.109,0.092 -1.848,0.092c-0.77,0 -1.401,-0.03 -1.894,-0.092c-0.493,-0.062 -0.886,-0.154 -1.178,-0.277c-0.293,-0.123 -0.501,-0.27 -0.624,-0.439c-0.123,-0.17 -0.185,-0.377 -0.185,-0.624l0,-25.273c0,-1.755 -0.154,-3.357 -0.462,-4.805c-0.308,-1.447 -0.801,-2.695 -1.478,-3.742c-0.678,-1.047 -1.54,-1.848 -2.588,-2.403c-1.047,-0.554 -2.279,-0.831 -3.696,-0.831c-1.756,0 -3.519,0.677 -5.29,2.033c-1.771,1.355 -3.719,3.342 -5.845,5.96l0,29.061c0,0.247 -0.061,0.454 -0.184,0.624c-0.124,0.169 -0.332,0.316 -0.624,0.439c-0.293,0.123 -0.685,0.215 -1.178,0.277c-0.493,0.062 -1.109,0.092 -1.848,0.092c-0.709,0 -1.317,-0.03 -1.825,-0.092c-0.509,-0.062 -0.909,-0.154 -1.202,-0.277c-0.292,-0.123 -0.492,-0.27 -0.6,-0.439c-0.108,-0.17 -0.162,-0.377 -0.162,-0.624l0,-25.273c0,-1.755 -0.169,-3.357 -0.508,-4.805c-0.339,-1.447 -0.847,-2.695 -1.525,-3.742c-0.678,-1.047 -1.532,-1.848 -2.564,-2.403c-1.032,-0.554 -2.256,-0.831 -3.673,-0.831c-1.756,0 -3.527,0.677 -5.314,2.033c-1.786,1.355 -3.727,3.342 -5.821,5.96l0,29.061c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.6,0.439c-0.278,0.123 -0.663,0.215 -1.156,0.277c-0.492,0.062 -1.124,0.092 -1.894,0.092c-0.739,0 -1.355,-0.03 -1.848,-0.092c-0.493,-0.062 -0.885,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.27 -0.601,-0.439c-0.108,-0.17 -0.161,-0.377 -0.161,-0.624l0,-41.582c0,-0.246 0.046,-0.454 0.138,-0.624c0.093,-0.169 0.277,-0.323 0.555,-0.462c0.277,-0.138 0.631,-0.231 1.062,-0.277c0.432,-0.046 1.001,-0.069 1.71,-0.069c0.677,0 1.24,0.023 1.686,0.069c0.447,0.046 0.793,0.139 1.04,0.277c0.246,0.139 0.423,0.293 0.531,0.462c0.108,0.17 0.162,0.378 0.162,0.624l0,5.498c2.341,-2.618 4.612,-4.535 6.815,-5.752c2.202,-1.217 4.427,-1.825 6.676,-1.825c1.725,0 3.273,0.2 4.643,0.601c1.371,0.4 2.58,0.962 3.627,1.686c1.047,0.724 1.941,1.586 2.68,2.587c0.739,1.001 1.355,2.118 1.848,3.35c1.386,-1.509 2.703,-2.788 3.95,-3.835c1.248,-1.047 2.449,-1.894 3.604,-2.541c1.155,-0.647 2.279,-1.117 3.373,-1.409c1.093,-0.293 2.194,-0.439 3.303,-0.439c2.68,0 4.929,0.47 6.746,1.409c1.817,0.939 3.288,2.195 4.412,3.766c1.124,1.57 1.925,3.411 2.403,5.521c0.477,2.11 0.716,4.335 0.716,6.676l0,26.289Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M576.574,283.389c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.492,0.062 -1.108,0.092 -1.848,0.092c-0.77,0 -1.401,-0.03 -1.894,-0.092c-0.493,-0.062 -0.886,-0.154 -1.178,-0.277c-0.293,-0.123 -0.501,-0.27 -0.624,-0.439c-0.123,-0.17 -0.185,-0.377 -0.185,-0.624l0,-25.273c0,-1.755 -0.154,-3.357 -0.462,-4.805c-0.308,-1.447 -0.801,-2.695 -1.478,-3.742c-0.678,-1.047 -1.54,-1.848 -2.588,-2.403c-1.047,-0.554 -2.279,-0.831 -3.696,-0.831c-1.755,0 -3.519,0.677 -5.29,2.033c-1.771,1.355 -3.719,3.342 -5.844,5.96l0,29.061c0,0.247 -0.062,0.454 -0.185,0.624c-0.124,0.169 -0.331,0.316 -0.624,0.439c-0.293,0.123 -0.685,0.215 -1.178,0.277c-0.493,0.062 -1.109,0.092 -1.848,0.092c-0.709,0 -1.317,-0.03 -1.825,-0.092c-0.509,-0.062 -0.909,-0.154 -1.202,-0.277c-0.292,-0.123 -0.492,-0.27 -0.6,-0.439c-0.108,-0.17 -0.162,-0.377 -0.162,-0.624l0,-25.273c0,-1.755 -0.169,-3.357 -0.508,-4.805c-0.339,-1.447 -0.847,-2.695 -1.525,-3.742c-0.677,-1.047 -1.532,-1.848 -2.564,-2.403c-1.032,-0.554 -2.256,-0.831 -3.673,-0.831c-1.756,0 -3.527,0.677 -5.313,2.033c-1.787,1.355 -3.727,3.342 -5.822,5.96l0,29.061c0,0.247 -0.061,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.6,0.439c-0.278,0.123 -0.663,0.215 -1.155,0.277c-0.493,0.062 -1.125,0.092 -1.895,0.092c-0.739,0 -1.355,-0.03 -1.848,-0.092c-0.493,-0.062 -0.885,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.27 -0.601,-0.439c-0.107,-0.17 -0.161,-0.377 -0.161,-0.624l0,-41.582c0,-0.246 0.046,-0.454 0.138,-0.624c0.093,-0.169 0.278,-0.323 0.555,-0.462c0.277,-0.138 0.631,-0.231 1.062,-0.277c0.432,-0.046 1.001,-0.069 1.71,-0.069c0.678,0 1.24,0.023 1.686,0.069c0.447,0.046 0.793,0.139 1.04,0.277c0.246,0.139 0.423,0.293 0.531,0.462c0.108,0.17 0.162,0.378 0.162,0.624l0,5.498c2.341,-2.618 4.612,-4.535 6.815,-5.752c2.202,-1.217 4.427,-1.825 6.676,-1.825c1.725,0 3.273,0.2 4.643,0.601c1.371,0.4 2.58,0.962 3.627,1.686c1.047,0.724 1.941,1.586 2.68,2.587c0.739,1.001 1.355,2.118 1.848,3.35c1.386,-1.509 2.703,-2.788 3.95,-3.835c1.248,-1.047 2.449,-1.894 3.604,-2.541c1.155,-0.647 2.279,-1.117 3.373,-1.409c1.093,-0.293 2.195,-0.439 3.303,-0.439c2.68,0 4.929,0.47 6.746,1.409c1.817,0.939 3.288,2.195 4.412,3.766c1.125,1.57 1.925,3.411 2.403,5.521c0.477,2.11 0.716,4.335 0.716,6.676l0,26.289Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M626.103,283.389c0,0.247 -0.054,0.454 -0.162,0.624c-0.108,0.169 -0.3,0.316 -0.577,0.439c-0.278,0.123 -0.639,0.215 -1.086,0.277c-0.447,0.062 -0.993,0.092 -1.64,0.092c-0.709,0 -1.286,-0.03 -1.733,-0.092c-0.447,-0.062 -0.801,-0.154 -1.063,-0.277c-0.261,-0.123 -0.438,-0.27 -0.531,-0.439c-0.092,-0.17 -0.138,-0.377 -0.138,-0.624l0,-5.498c-2.372,2.618 -4.713,4.528 -7.023,5.729c-2.31,1.201 -4.651,1.802 -7.023,1.802c-2.772,0 -5.105,-0.462 -7,-1.386c-1.894,-0.924 -3.426,-2.179 -4.597,-3.766c-1.17,-1.586 -2.01,-3.434 -2.518,-5.544c-0.508,-2.11 -0.762,-4.674 -0.762,-7.693l0,-25.226c0,-0.246 0.054,-0.454 0.162,-0.624c0.107,-0.169 0.315,-0.323 0.623,-0.462c0.308,-0.138 0.709,-0.231 1.202,-0.277c0.492,-0.046 1.108,-0.069 1.848,-0.069c0.739,0 1.355,0.023 1.848,0.069c0.493,0.046 0.885,0.139 1.178,0.277c0.292,0.139 0.5,0.293 0.624,0.462c0.123,0.17 0.184,0.378 0.184,0.624l0,24.21c0,2.433 0.178,4.382 0.532,5.845c0.354,1.463 0.893,2.71 1.617,3.742c0.724,1.032 1.64,1.833 2.749,2.403c1.109,0.569 2.402,0.854 3.881,0.854c1.91,0 3.812,-0.677 5.706,-2.033c1.894,-1.355 3.904,-3.342 6.029,-5.96l0,-29.061c0,-0.246 0.054,-0.454 0.162,-0.624c0.108,-0.169 0.316,-0.323 0.624,-0.462c0.308,-0.138 0.7,-0.231 1.178,-0.277c0.477,-0.046 1.101,-0.069 1.871,-0.069c0.739,0 1.355,0.023 1.848,0.069c0.493,0.046 0.878,0.139 1.155,0.277c0.277,0.139 0.485,0.293 0.624,0.462c0.139,0.17 0.208,0.378 0.208,0.624l0,41.582Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M676.001,283.389c0,0.247 -0.061,0.454 -0.184,0.624c-0.124,0.169 -0.324,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.493,0.062 -1.109,0.092 -1.848,0.092c-0.77,0 -1.402,-0.03 -1.894,-0.092c-0.493,-0.062 -0.878,-0.154 -1.155,-0.277c-0.278,-0.123 -0.478,-0.27 -0.601,-0.439c-0.123,-0.17 -0.185,-0.377 -0.185,-0.624l0,-24.349c0,-2.371 -0.185,-4.281 -0.554,-5.729c-0.37,-1.447 -0.909,-2.695 -1.617,-3.742c-0.709,-1.047 -1.625,-1.848 -2.749,-2.403c-1.125,-0.554 -2.426,-0.831 -3.905,-0.831c-1.909,0 -3.819,0.677 -5.729,2.033c-1.909,1.355 -3.911,3.342 -6.006,5.96l0,29.061c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.6,0.439c-0.278,0.123 -0.663,0.215 -1.155,0.277c-0.493,0.062 -1.125,0.092 -1.895,0.092c-0.739,0 -1.355,-0.03 -1.848,-0.092c-0.493,-0.062 -0.885,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.27 -0.601,-0.439c-0.107,-0.17 -0.161,-0.377 -0.161,-0.624l0,-41.582c0,-0.246 0.046,-0.454 0.138,-0.624c0.093,-0.169 0.277,-0.323 0.555,-0.462c0.277,-0.138 0.631,-0.231 1.062,-0.277c0.432,-0.046 1.001,-0.069 1.71,-0.069c0.677,0 1.24,0.023 1.686,0.069c0.447,0.046 0.793,0.139 1.04,0.277c0.246,0.139 0.423,0.293 0.531,0.462c0.108,0.17 0.162,0.378 0.162,0.624l0,5.498c2.341,-2.618 4.674,-4.535 6.999,-5.752c2.326,-1.217 4.675,-1.825 7.046,-1.825c2.772,0 5.106,0.47 7,1.409c1.894,0.939 3.427,2.195 4.597,3.766c1.171,1.57 2.01,3.411 2.518,5.521c0.508,2.11 0.762,4.643 0.762,7.6l0,25.365Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M697.532,283.389c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.493,0.062 -1.124,0.092 -1.894,0.092c-0.739,0 -1.355,-0.03 -1.848,-0.092c-0.493,-0.062 -0.886,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.27 -0.601,-0.439c-0.108,-0.17 -0.162,-0.377 -0.162,-0.624l0,-41.582c0,-0.216 0.054,-0.416 0.162,-0.601c0.108,-0.184 0.308,-0.338 0.601,-0.462c0.292,-0.123 0.685,-0.215 1.178,-0.277c0.493,-0.061 1.109,-0.092 1.848,-0.092c0.77,0 1.401,0.031 1.894,0.092c0.493,0.062 0.878,0.154 1.155,0.277c0.278,0.124 0.478,0.278 0.601,0.462c0.123,0.185 0.185,0.385 0.185,0.601l0,41.582Zm0.878,-55.628c0,1.787 -0.339,3.004 -1.017,3.65c-0.677,0.647 -1.925,0.971 -3.742,0.971c-1.787,0 -3.011,-0.316 -3.673,-0.947c-0.663,-0.632 -0.994,-1.825 -0.994,-3.581c0,-1.787 0.339,-3.003 1.017,-3.65c0.677,-0.647 1.925,-0.97 3.742,-0.97c1.787,0 3.011,0.315 3.673,0.947c0.663,0.631 0.994,1.825 0.994,3.58Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M733.246,280.34c0,0.893 -0.061,1.601 -0.185,2.125c-0.123,0.524 -0.308,0.909 -0.554,1.155c-0.246,0.247 -0.616,0.478 -1.109,0.693c-0.493,0.216 -1.055,0.393 -1.686,0.532c-0.632,0.138 -1.302,0.254 -2.01,0.346c-0.708,0.092 -1.417,0.139 -2.125,0.139c-2.156,0 -4.005,-0.285 -5.545,-0.855c-1.54,-0.57 -2.803,-1.432 -3.788,-2.587c-0.986,-1.155 -1.702,-2.619 -2.149,-4.39c-0.446,-1.771 -0.67,-3.858 -0.67,-6.26l0,-24.303l-5.821,0c-0.462,0 -0.832,-0.246 -1.109,-0.739c-0.277,-0.493 -0.416,-1.293 -0.416,-2.402c0,-0.586 0.039,-1.078 0.116,-1.479c0.077,-0.4 0.177,-0.731 0.3,-0.993c0.123,-0.262 0.285,-0.447 0.485,-0.555c0.2,-0.107 0.424,-0.161 0.67,-0.161l5.775,0l0,-9.888c0,-0.215 0.054,-0.415 0.162,-0.6c0.108,-0.185 0.308,-0.347 0.601,-0.485c0.292,-0.139 0.685,-0.239 1.178,-0.301c0.493,-0.061 1.109,-0.092 1.848,-0.092c0.77,0 1.401,0.031 1.894,0.092c0.493,0.062 0.878,0.162 1.155,0.301c0.278,0.138 0.478,0.3 0.601,0.485c0.123,0.185 0.185,0.385 0.185,0.6l0,9.888l10.673,0c0.246,0 0.462,0.054 0.646,0.161c0.185,0.108 0.347,0.293 0.486,0.555c0.138,0.262 0.238,0.593 0.3,0.993c0.061,0.401 0.092,0.893 0.092,1.479c0,1.109 -0.138,1.909 -0.416,2.402c-0.277,0.493 -0.646,0.739 -1.108,0.739l-10.673,0l0,23.194c0,2.865 0.423,5.028 1.27,6.491c0.847,1.464 2.364,2.195 4.551,2.195c0.709,0 1.34,-0.069 1.895,-0.208c0.554,-0.138 1.047,-0.285 1.478,-0.439c0.431,-0.154 0.801,-0.3 1.109,-0.439c0.308,-0.138 0.585,-0.208 0.832,-0.208c0.154,0 0.3,0.039 0.439,0.116c0.138,0.077 0.246,0.223 0.323,0.439c0.077,0.215 0.146,0.508 0.208,0.878c0.061,0.369 0.092,0.831 0.092,1.386Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M762.261,284.544l-5.544,15.293c-0.185,0.493 -0.654,0.87 -1.409,1.132c-0.755,0.262 -1.902,0.393 -3.442,0.393c-0.801,0 -1.448,-0.039 -1.941,-0.116c-0.493,-0.077 -0.87,-0.208 -1.132,-0.392c-0.261,-0.185 -0.408,-0.432 -0.439,-0.74c-0.03,-0.308 0.047,-0.677 0.231,-1.108l5.73,-14.462c-0.278,-0.123 -0.539,-0.323 -0.786,-0.6c-0.246,-0.278 -0.416,-0.57 -0.508,-0.878l-14.831,-39.734c-0.247,-0.647 -0.37,-1.155 -0.37,-1.525c0,-0.37 0.123,-0.662 0.37,-0.878c0.246,-0.215 0.647,-0.362 1.201,-0.439c0.555,-0.077 1.294,-0.115 2.218,-0.115c0.924,0 1.648,0.023 2.171,0.069c0.524,0.046 0.94,0.131 1.248,0.254c0.308,0.123 0.531,0.3 0.67,0.531c0.138,0.231 0.285,0.547 0.439,0.948l11.874,33.358l0.138,0l11.459,-33.543c0.184,-0.585 0.408,-0.963 0.669,-1.132c0.262,-0.17 0.655,-0.293 1.179,-0.37c0.523,-0.077 1.278,-0.115 2.264,-0.115c0.862,0 1.57,0.038 2.125,0.115c0.554,0.077 0.962,0.224 1.224,0.439c0.262,0.216 0.393,0.508 0.393,0.878c0,0.37 -0.092,0.832 -0.277,1.386l-14.924,41.351Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M840.528,267.773c0,2.803 -0.516,5.298 -1.548,7.485c-1.031,2.186 -2.464,4.042 -4.296,5.567c-1.833,1.525 -3.989,2.672 -6.469,3.442c-2.479,0.77 -5.151,1.155 -8.016,1.155c-2.002,0 -3.858,-0.169 -5.567,-0.508c-1.71,-0.339 -3.234,-0.755 -4.574,-1.248c-1.34,-0.492 -2.464,-1.001 -3.373,-1.524c-0.909,-0.524 -1.54,-0.971 -1.894,-1.34c-0.355,-0.37 -0.616,-0.84 -0.786,-1.409c-0.169,-0.57 -0.254,-1.333 -0.254,-2.287c0,-0.678 0.031,-1.24 0.093,-1.687c0.061,-0.446 0.154,-0.808 0.277,-1.086c0.123,-0.277 0.277,-0.469 0.462,-0.577c0.185,-0.108 0.4,-0.162 0.647,-0.162c0.431,0 1.039,0.262 1.825,0.786c0.785,0.523 1.794,1.093 3.026,1.709c1.232,0.616 2.718,1.194 4.458,1.733c1.741,0.539 3.75,0.808 6.03,0.808c1.725,0 3.303,-0.231 4.736,-0.693c1.432,-0.462 2.664,-1.116 3.696,-1.963c1.032,-0.847 1.825,-1.887 2.379,-3.119c0.555,-1.232 0.832,-2.634 0.832,-4.204c0,-1.695 -0.385,-3.142 -1.155,-4.343c-0.77,-1.202 -1.787,-2.257 -3.05,-3.165c-1.262,-0.909 -2.702,-1.741 -4.32,-2.495c-1.617,-0.755 -3.272,-1.525 -4.966,-2.31c-1.694,-0.786 -3.342,-1.656 -4.944,-2.611c-1.602,-0.955 -3.034,-2.079 -4.297,-3.373c-1.263,-1.293 -2.287,-2.81 -3.072,-4.551c-0.786,-1.74 -1.178,-3.827 -1.178,-6.26c0,-2.495 0.454,-4.72 1.363,-6.676c0.908,-1.956 2.171,-3.596 3.788,-4.921c1.617,-1.324 3.542,-2.333 5.775,-3.026c2.234,-0.693 4.644,-1.04 7.231,-1.04c1.325,0 2.657,0.116 3.997,0.347c1.34,0.231 2.602,0.539 3.788,0.924c1.186,0.385 2.241,0.816 3.165,1.294c0.924,0.477 1.532,0.862 1.825,1.155c0.293,0.292 0.485,0.523 0.578,0.693c0.092,0.169 0.169,0.385 0.231,0.647c0.061,0.261 0.107,0.577 0.138,0.947c0.031,0.369 0.046,0.847 0.046,1.432c0,0.554 -0.023,1.047 -0.069,1.479c-0.046,0.431 -0.115,0.793 -0.208,1.085c-0.092,0.293 -0.223,0.508 -0.392,0.647c-0.17,0.139 -0.362,0.208 -0.578,0.208c-0.339,0 -0.87,-0.216 -1.594,-0.647c-0.724,-0.431 -1.609,-0.916 -2.657,-1.455c-1.047,-0.539 -2.287,-1.032 -3.719,-1.479c-1.432,-0.446 -3.042,-0.67 -4.828,-0.67c-1.663,0 -3.111,0.224 -4.343,0.67c-1.232,0.447 -2.249,1.04 -3.049,1.779c-0.801,0.739 -1.402,1.617 -1.802,2.634c-0.401,1.016 -0.601,2.094 -0.601,3.234c0,1.663 0.385,3.095 1.155,4.297c0.77,1.201 1.794,2.264 3.073,3.188c1.278,0.924 2.733,1.771 4.366,2.541c1.632,0.77 3.295,1.548 4.99,2.333c1.694,0.785 3.357,1.648 4.989,2.587c1.633,0.94 3.088,2.049 4.367,3.327c1.278,1.278 2.31,2.787 3.095,4.528c0.786,1.74 1.178,3.796 1.178,6.168Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M886.638,283.389c0,0.247 -0.054,0.454 -0.161,0.624c-0.108,0.169 -0.301,0.316 -0.578,0.439c-0.277,0.123 -0.639,0.215 -1.086,0.277c-0.446,0.062 -0.993,0.092 -1.64,0.092c-0.708,0 -1.286,-0.03 -1.733,-0.092c-0.446,-0.062 -0.8,-0.154 -1.062,-0.277c-0.262,-0.123 -0.439,-0.27 -0.532,-0.439c-0.092,-0.17 -0.138,-0.377 -0.138,-0.624l0,-5.498c-2.372,2.618 -4.713,4.528 -7.023,5.729c-2.31,1.201 -4.651,1.802 -7.023,1.802c-2.772,0 -5.105,-0.462 -6.999,-1.386c-1.895,-0.924 -3.427,-2.179 -4.597,-3.766c-1.171,-1.586 -2.01,-3.434 -2.519,-5.544c-0.508,-2.11 -0.762,-4.674 -0.762,-7.693l0,-25.226c0,-0.246 0.054,-0.454 0.162,-0.624c0.108,-0.169 0.316,-0.323 0.624,-0.462c0.308,-0.138 0.708,-0.231 1.201,-0.277c0.493,-0.046 1.109,-0.069 1.848,-0.069c0.739,0 1.355,0.023 1.848,0.069c0.493,0.046 0.886,0.139 1.178,0.277c0.293,0.139 0.501,0.293 0.624,0.462c0.123,0.17 0.185,0.378 0.185,0.624l0,24.21c0,2.433 0.177,4.382 0.531,5.845c0.354,1.463 0.893,2.71 1.617,3.742c0.724,1.032 1.64,1.833 2.749,2.403c1.109,0.569 2.403,0.854 3.881,0.854c1.91,0 3.812,-0.677 5.706,-2.033c1.895,-1.355 3.904,-3.342 6.03,-5.96l0,-29.061c0,-0.246 0.054,-0.454 0.161,-0.624c0.108,-0.169 0.316,-0.323 0.624,-0.462c0.308,-0.138 0.701,-0.231 1.178,-0.277c0.478,-0.046 1.101,-0.069 1.871,-0.069c0.74,0 1.356,0.023 1.849,0.069c0.492,0.046 0.877,0.139 1.155,0.277c0.277,0.139 0.485,0.293 0.623,0.462c0.139,0.17 0.208,0.378 0.208,0.624l0,41.582Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M938.986,261.951c0,3.635 -0.393,6.9 -1.179,9.795c-0.785,2.895 -1.94,5.352 -3.465,7.369c-1.524,2.018 -3.411,3.573 -5.66,4.667c-2.248,1.093 -4.82,1.64 -7.715,1.64c-1.232,0 -2.372,-0.123 -3.419,-0.37c-1.048,-0.246 -2.072,-0.631 -3.073,-1.155c-1.001,-0.523 -1.994,-1.185 -2.98,-1.986c-0.986,-0.801 -2.033,-1.741 -3.142,-2.819l0,20.791c0,0.247 -0.061,0.462 -0.184,0.647c-0.124,0.185 -0.324,0.339 -0.601,0.462c-0.277,0.123 -0.662,0.216 -1.155,0.277c-0.493,0.062 -1.124,0.093 -1.894,0.093c-0.74,0 -1.356,-0.031 -1.849,-0.093c-0.492,-0.061 -0.885,-0.154 -1.178,-0.277c-0.292,-0.123 -0.493,-0.277 -0.6,-0.462c-0.108,-0.185 -0.162,-0.4 -0.162,-0.647l0,-58.076c0,-0.277 0.046,-0.501 0.139,-0.67c0.092,-0.169 0.277,-0.316 0.554,-0.439c0.277,-0.123 0.631,-0.208 1.063,-0.254c0.431,-0.046 0.954,-0.069 1.571,-0.069c0.646,0 1.178,0.023 1.594,0.069c0.415,0.046 0.762,0.131 1.039,0.254c0.277,0.123 0.47,0.27 0.578,0.439c0.107,0.169 0.161,0.393 0.161,0.67l0,5.59c1.263,-1.293 2.48,-2.417 3.65,-3.372c1.171,-0.955 2.349,-1.748 3.535,-2.38c1.186,-0.631 2.402,-1.109 3.65,-1.432c1.247,-0.323 2.564,-0.485 3.95,-0.485c3.019,0 5.591,0.585 7.716,1.756c2.125,1.17 3.858,2.772 5.198,4.805c1.34,2.033 2.317,4.397 2.933,7.092c0.617,2.695 0.925,5.552 0.925,8.57Zm-7.901,0.878c0,-2.125 -0.163,-4.181 -0.488,-6.168c-0.325,-1.987 -0.883,-3.75 -1.673,-5.29c-0.791,-1.54 -1.852,-2.772 -3.185,-3.696c-1.332,-0.924 -2.99,-1.386 -4.974,-1.386c-0.992,0 -1.968,0.146 -2.929,0.439c-0.96,0.292 -1.936,0.754 -2.928,1.386c-0.992,0.631 -2.03,1.463 -3.115,2.495c-1.085,1.031 -2.231,2.302 -3.44,3.811l0,16.541c2.108,2.556 4.107,4.512 5.997,5.867c1.891,1.356 3.874,2.033 5.95,2.033c1.922,0 3.572,-0.462 4.951,-1.386c1.379,-0.924 2.495,-2.156 3.347,-3.696c0.852,-1.54 1.48,-3.265 1.883,-5.175c0.403,-1.909 0.604,-3.834 0.604,-5.775Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M988.699,261.951c0,3.635 -0.392,6.9 -1.178,9.795c-0.785,2.895 -1.94,5.352 -3.465,7.369c-1.525,2.018 -3.411,3.573 -5.66,4.667c-2.248,1.093 -4.82,1.64 -7.716,1.64c-1.232,0 -2.371,-0.123 -3.419,-0.37c-1.047,-0.246 -2.071,-0.631 -3.072,-1.155c-1.001,-0.523 -1.994,-1.185 -2.98,-1.986c-0.986,-0.801 -2.033,-1.741 -3.142,-2.819l0,20.791c0,0.247 -0.061,0.462 -0.185,0.647c-0.123,0.185 -0.323,0.339 -0.6,0.462c-0.278,0.123 -0.663,0.216 -1.155,0.277c-0.493,0.062 -1.125,0.093 -1.895,0.093c-0.739,0 -1.355,-0.031 -1.848,-0.093c-0.493,-0.061 -0.885,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.277 -0.601,-0.462c-0.107,-0.185 -0.161,-0.4 -0.161,-0.647l0,-58.076c0,-0.277 0.046,-0.501 0.138,-0.67c0.093,-0.169 0.278,-0.316 0.555,-0.439c0.277,-0.123 0.631,-0.208 1.062,-0.254c0.432,-0.046 0.955,-0.069 1.571,-0.069c0.647,0 1.178,0.023 1.594,0.069c0.416,0.046 0.763,0.131 1.04,0.254c0.277,0.123 0.47,0.27 0.577,0.439c0.108,0.169 0.162,0.393 0.162,0.67l0,5.59c1.263,-1.293 2.48,-2.417 3.65,-3.372c1.171,-0.955 2.349,-1.748 3.535,-2.38c1.185,-0.631 2.402,-1.109 3.65,-1.432c1.247,-0.323 2.564,-0.485 3.95,-0.485c3.018,0 5.59,0.585 7.716,1.756c2.125,1.17 3.858,2.772 5.197,4.805c1.34,2.033 2.318,4.397 2.934,7.092c0.616,2.695 0.924,5.552 0.924,8.57Zm-7.9,0.878c0,-2.125 -0.163,-4.181 -0.488,-6.168c-0.326,-1.987 -0.883,-3.75 -1.674,-5.29c-0.79,-1.54 -1.851,-2.772 -3.184,-3.696c-1.333,-0.924 -2.991,-1.386 -4.974,-1.386c-0.992,0 -1.968,0.146 -2.929,0.439c-0.96,0.292 -1.937,0.754 -2.928,1.386c-0.992,0.631 -2.03,1.463 -3.115,2.495c-1.085,1.031 -2.231,2.302 -3.44,3.811l0,16.541c2.108,2.556 4.107,4.512 5.997,5.867c1.891,1.356 3.874,2.033 5.95,2.033c1.921,0 3.571,-0.462 4.951,-1.386c1.379,-0.924 2.494,-2.156 3.347,-3.696c0.852,-1.54 1.48,-3.265 1.882,-5.175c0.403,-1.909 0.605,-3.834 0.605,-5.775Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1038.83,262.136c0,3.388 -0.447,6.507 -1.34,9.356c-0.893,2.849 -2.225,5.306 -3.996,7.369c-1.772,2.064 -3.989,3.673 -6.654,4.828c-2.664,1.156 -5.752,1.733 -9.263,1.733c-3.419,0 -6.399,-0.508 -8.94,-1.525c-2.541,-1.016 -4.659,-2.495 -6.353,-4.435c-1.694,-1.941 -2.957,-4.297 -3.789,-7.069c-0.831,-2.772 -1.247,-5.914 -1.247,-9.425c0,-3.388 0.439,-6.507 1.317,-9.356c0.877,-2.849 2.202,-5.306 3.973,-7.37c1.771,-2.063 3.981,-3.665 6.63,-4.805c2.649,-1.139 5.744,-1.709 9.287,-1.709c3.419,0 6.399,0.508 8.94,1.525c2.541,1.016 4.659,2.494 6.353,4.435c1.694,1.94 2.964,4.297 3.811,7.069c0.847,2.772 1.271,5.898 1.271,9.379Zm-7.901,0.508c0,-2.248 -0.21,-4.374 -0.629,-6.376c-0.42,-2.002 -1.111,-3.757 -2.075,-5.267c-0.963,-1.509 -2.269,-2.703 -3.916,-3.58c-1.647,-0.878 -3.698,-1.317 -6.154,-1.317c-2.269,0 -4.219,0.4 -5.851,1.201c-1.631,0.801 -2.976,1.933 -4.032,3.396c-1.057,1.463 -1.842,3.196 -2.354,5.198c-0.513,2.002 -0.77,4.189 -0.77,6.56c0,2.28 0.21,4.42 0.63,6.423c0.42,2.002 1.119,3.75 2.098,5.244c0.979,1.493 2.292,2.679 3.939,3.557c1.647,0.878 3.698,1.317 6.154,1.317c2.238,0 4.18,-0.401 5.827,-1.201c1.648,-0.801 3,-1.925 4.056,-3.373c1.057,-1.448 1.834,-3.173 2.331,-5.175c0.498,-2.002 0.746,-4.204 0.746,-6.607Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1074.36,244.533c0,0.678 -0.016,1.247 -0.047,1.709c-0.03,0.462 -0.092,0.824 -0.184,1.086c-0.093,0.262 -0.208,0.462 -0.347,0.601c-0.139,0.138 -0.331,0.208 -0.577,0.208c-0.247,0 -0.547,-0.07 -0.901,-0.208c-0.355,-0.139 -0.755,-0.277 -1.202,-0.416c-0.446,-0.139 -0.947,-0.27 -1.501,-0.393c-0.555,-0.123 -1.155,-0.185 -1.802,-0.185c-0.77,0 -1.525,0.154 -2.264,0.462c-0.739,0.308 -1.517,0.817 -2.333,1.525c-0.817,0.709 -1.671,1.648 -2.565,2.818c-0.893,1.171 -1.878,2.603 -2.956,4.297l0,27.352c0,0.247 -0.062,0.454 -0.185,0.624c-0.124,0.169 -0.324,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.493,0.062 -1.124,0.092 -1.894,0.092c-0.74,0 -1.356,-0.03 -1.848,-0.092c-0.493,-0.062 -0.886,-0.154 -1.179,-0.277c-0.292,-0.123 -0.492,-0.27 -0.6,-0.439c-0.108,-0.17 -0.162,-0.377 -0.162,-0.624l0,-41.582c0,-0.246 0.046,-0.454 0.139,-0.624c0.092,-0.169 0.277,-0.323 0.554,-0.462c0.277,-0.138 0.632,-0.231 1.063,-0.277c0.431,-0.046 1.001,-0.069 1.709,-0.069c0.678,0 1.24,0.023 1.687,0.069c0.446,0.046 0.793,0.139 1.039,0.277c0.247,0.139 0.424,0.293 0.532,0.462c0.107,0.17 0.161,0.378 0.161,0.624l0,6.052c1.14,-1.663 2.21,-3.018 3.211,-4.065c1.001,-1.048 1.949,-1.872 2.842,-2.472c0.893,-0.601 1.779,-1.017 2.656,-1.248c0.878,-0.231 1.764,-0.346 2.657,-0.346c0.4,0 0.855,0.023 1.363,0.069c0.508,0.046 1.04,0.131 1.594,0.254c0.554,0.123 1.055,0.262 1.502,0.416c0.446,0.154 0.762,0.308 0.947,0.462c0.185,0.154 0.308,0.3 0.369,0.439c0.062,0.139 0.116,0.316 0.162,0.531c0.046,0.216 0.077,0.532 0.092,0.948c0.016,0.415 0.024,0.977 0.024,1.686Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1104.67,280.34c0,0.893 -0.061,1.601 -0.184,2.125c-0.124,0.524 -0.308,0.909 -0.555,1.155c-0.246,0.247 -0.616,0.478 -1.109,0.693c-0.493,0.216 -1.055,0.393 -1.686,0.532c-0.632,0.138 -1.302,0.254 -2.01,0.346c-0.708,0.092 -1.417,0.139 -2.125,0.139c-2.156,0 -4.004,-0.285 -5.545,-0.855c-1.54,-0.57 -2.802,-1.432 -3.788,-2.587c-0.986,-1.155 -1.702,-2.619 -2.149,-4.39c-0.446,-1.771 -0.669,-3.858 -0.669,-6.26l0,-24.303l-5.822,0c-0.462,0 -0.832,-0.246 -1.109,-0.739c-0.277,-0.493 -0.416,-1.293 -0.416,-2.402c0,-0.586 0.039,-1.078 0.116,-1.479c0.077,-0.4 0.177,-0.731 0.3,-0.993c0.123,-0.262 0.285,-0.447 0.485,-0.555c0.2,-0.107 0.424,-0.161 0.67,-0.161l5.776,0l0,-9.888c0,-0.215 0.053,-0.415 0.161,-0.6c0.108,-0.185 0.308,-0.347 0.601,-0.485c0.292,-0.139 0.685,-0.239 1.178,-0.301c0.493,-0.061 1.109,-0.092 1.848,-0.092c0.77,0 1.402,0.031 1.894,0.092c0.493,0.062 0.878,0.162 1.155,0.301c0.278,0.138 0.478,0.3 0.601,0.485c0.123,0.185 0.185,0.385 0.185,0.6l0,9.888l10.673,0c0.246,0 0.462,0.054 0.646,0.161c0.185,0.108 0.347,0.293 0.486,0.555c0.138,0.262 0.238,0.593 0.3,0.993c0.062,0.401 0.092,0.893 0.092,1.479c0,1.109 -0.138,1.909 -0.415,2.402c-0.278,0.493 -0.647,0.739 -1.109,0.739l-10.673,0l0,23.194c0,2.865 0.423,5.028 1.27,6.491c0.848,1.464 2.364,2.195 4.551,2.195c0.709,0 1.34,-0.069 1.895,-0.208c0.554,-0.138 1.047,-0.285 1.478,-0.439c0.431,-0.154 0.801,-0.3 1.109,-0.439c0.308,-0.138 0.585,-0.208 0.832,-0.208c0.154,0 0.3,0.039 0.439,0.116c0.138,0.077 0.246,0.223 0.323,0.439c0.077,0.215 0.146,0.508 0.208,0.878c0.062,0.369 0.092,0.831 0.092,1.386Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1149.21,260.796c0,1.201 -0.301,2.056 -0.904,2.564c-0.604,0.509 -1.292,0.763 -2.066,0.763l-27.385,0c0,2.31 0.233,4.389 0.697,6.237c0.464,1.848 1.238,3.434 2.321,4.759c1.083,1.324 2.492,2.341 4.225,3.049c1.733,0.709 3.854,1.063 6.36,1.063c1.981,0 3.746,-0.162 5.293,-0.485c1.548,-0.324 2.886,-0.686 4.016,-1.086c1.13,-0.4 2.059,-0.762 2.786,-1.086c0.727,-0.323 1.277,-0.485 1.649,-0.485c0.216,0 0.409,0.054 0.58,0.162c0.17,0.108 0.301,0.269 0.394,0.485c0.093,0.216 0.163,0.516 0.209,0.901c0.047,0.385 0.07,0.855 0.07,1.409c0,0.401 -0.016,0.747 -0.046,1.04c-0.031,0.292 -0.07,0.554 -0.116,0.785c-0.046,0.231 -0.123,0.439 -0.231,0.624c-0.108,0.185 -0.246,0.362 -0.416,0.531c-0.169,0.17 -0.67,0.447 -1.501,0.832c-0.832,0.385 -1.91,0.762 -3.235,1.132c-1.324,0.369 -2.856,0.701 -4.597,0.993c-1.74,0.293 -3.596,0.439 -5.567,0.439c-3.419,0 -6.414,-0.477 -8.986,-1.432c-2.572,-0.955 -4.736,-2.372 -6.492,-4.251c-1.756,-1.879 -3.08,-4.235 -3.973,-7.069c-0.894,-2.834 -1.34,-6.129 -1.34,-9.887c0,-3.573 0.462,-6.784 1.386,-9.633c0.924,-2.849 2.256,-5.267 3.996,-7.254c1.741,-1.987 3.843,-3.511 6.307,-4.574c2.464,-1.063 5.221,-1.594 8.27,-1.594c3.265,0 6.045,0.524 8.34,1.571c2.295,1.047 4.181,2.456 5.66,4.227c1.478,1.771 2.564,3.85 3.257,6.238c0.693,2.387 1.039,4.936 1.039,7.646l0,1.386Zm-7.669,-2.264c0.092,-4.004 -0.799,-7.146 -2.673,-9.425c-1.875,-2.279 -4.656,-3.419 -8.344,-3.419c-1.891,0 -3.549,0.354 -4.974,1.063c-1.426,0.708 -2.619,1.648 -3.58,2.818c-0.961,1.17 -1.705,2.533 -2.231,4.089c-0.527,1.555 -0.821,3.18 -0.884,4.874l22.686,0Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1196.42,283.389c0,0.247 -0.054,0.462 -0.161,0.647c-0.108,0.185 -0.293,0.331 -0.555,0.439c-0.262,0.108 -0.608,0.192 -1.039,0.254c-0.432,0.062 -0.955,0.092 -1.571,0.092c-0.647,0 -1.186,-0.03 -1.617,-0.092c-0.432,-0.062 -0.786,-0.146 -1.063,-0.254c-0.277,-0.108 -0.477,-0.254 -0.601,-0.439c-0.123,-0.185 -0.184,-0.4 -0.184,-0.647l0,-5.498c-2.187,2.372 -4.459,4.22 -6.815,5.544c-2.357,1.325 -4.936,1.987 -7.739,1.987c-3.05,0 -5.652,-0.593 -7.808,-1.779c-2.157,-1.186 -3.905,-2.787 -5.244,-4.805c-1.34,-2.017 -2.318,-4.389 -2.934,-7.115c-0.616,-2.726 -0.924,-5.598 -0.924,-8.617c0,-3.573 0.385,-6.799 1.155,-9.679c0.77,-2.88 1.909,-5.336 3.419,-7.369c1.509,-2.033 3.38,-3.596 5.613,-4.69c2.233,-1.093 4.813,-1.64 7.739,-1.64c2.434,0 4.659,0.531 6.676,1.594c2.018,1.063 4.012,2.626 5.984,4.689l0,-24.163c0,-0.216 0.054,-0.424 0.161,-0.624c0.108,-0.2 0.316,-0.354 0.624,-0.462c0.308,-0.108 0.701,-0.2 1.178,-0.277c0.478,-0.077 1.086,-0.116 1.825,-0.116c0.77,0 1.402,0.039 1.895,0.116c0.492,0.077 0.877,0.169 1.155,0.277c0.277,0.108 0.485,0.262 0.623,0.462c0.139,0.2 0.208,0.408 0.208,0.624l0,61.541Zm-7.669,-29.246c-2.064,-2.557 -4.058,-4.505 -5.984,-5.845c-1.925,-1.339 -3.934,-2.009 -6.029,-2.009c-1.94,0 -3.588,0.462 -4.944,1.386c-1.355,0.924 -2.456,2.14 -3.303,3.65c-0.847,1.509 -1.463,3.218 -1.848,5.128c-0.385,1.91 -0.578,3.85 -0.578,5.822c0,2.094 0.162,4.142 0.485,6.145c0.324,2.002 0.886,3.78 1.687,5.336c0.801,1.555 1.863,2.803 3.188,3.742c1.324,0.94 2.988,1.41 4.99,1.41c1.016,0 1.994,-0.139 2.934,-0.416c0.939,-0.278 1.902,-0.74 2.887,-1.386c0.986,-0.647 2.018,-1.487 3.096,-2.518c1.078,-1.032 2.217,-2.303 3.419,-3.812l0,-16.633Z" style="fill:#fff;fill-rule:nonzero;"/></g></svg>
\ No newline at end of file +<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg width="100%" height="100%" viewBox="0 0 1260 371" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;"><rect id="badge.-community.-dark" x="0" y="0.321" width="1260" height="370" style="fill:none;"/><clipPath id="_clip1"><rect x="0" y="0.321" width="1260" height="370"/></clipPath><g clip-path="url(#_clip1)"><path d="M1260,33.621c0,-18.379 -14.921,-33.3 -33.3,-33.3l-1193.4,0c-18.379,0 -33.3,14.921 -33.3,33.3l0,303.4c0,18.378 14.921,33.3 33.3,33.3l1193.4,0c18.379,0 33.3,-14.922 33.3,-33.3l0,-303.4Z" style="fill:#333;"/><path d="M118.018,302.021l-6.434,0c-1.775,0 -3.217,-1.441 -3.217,-3.217l0,-20.679l-4.548,0c-15.366,0 -27.841,-12.475 -27.841,-27.841l0,-4.548l-20.679,0c-1.776,0 -3.217,-1.442 -3.217,-3.217l0,-6.434c0,-1.775 1.441,-3.217 3.217,-3.217l20.679,0l0,-14.123l-20.679,0c-1.776,0 -3.217,-1.441 -3.217,-3.217l0,-6.434c0,-1.775 1.441,-3.217 3.217,-3.217l20.679,0l0,-14.123l-20.679,0c-1.776,0 -3.217,-1.441 -3.217,-3.216l0,-6.434c0,-1.776 1.441,-3.217 3.217,-3.217l20.679,0l0,-14.123l-20.679,0c-1.776,0 -3.217,-1.442 -3.217,-3.217l0,-6.434c0,-1.775 1.441,-3.217 3.217,-3.217l20.679,0l0,-14.123l-20.679,0c-1.776,0 -3.217,-1.441 -3.217,-3.217l0,-6.434c0,-1.775 1.441,-3.216 3.217,-3.217l20.679,0l0,-4.548c0,-15.366 12.475,-27.841 27.841,-27.841l4.548,0l0,-20.679c0,-1.776 1.442,-3.217 3.217,-3.217l6.434,0c1.776,0 3.217,1.441 3.217,3.217l0,20.679l14.123,0l0,-20.679c0,-1.776 1.441,-3.217 3.217,-3.217l6.434,0c1.775,0 3.217,1.441 3.217,3.217l0,20.679l14.123,0l0,-20.679c0,-1.776 1.441,-3.217 3.217,-3.217l6.433,0c1.776,0 3.217,1.441 3.217,3.217l0,20.679l14.123,0l0,-20.679c0,-1.776 1.442,-3.217 3.217,-3.217l6.434,0c1.776,0 3.217,1.441 3.217,3.217l0,20.679l14.123,0l0,-20.679c0,-1.776 1.441,-3.217 3.217,-3.217l6.434,0c1.775,0 3.217,1.441 3.217,3.217l0,20.679l4.548,0c15.366,0 27.841,12.475 27.841,27.841l0,4.548l20.679,0c1.776,0.001 3.217,1.442 3.217,3.217l0,6.434c0,1.775 -1.441,3.217 -3.217,3.217l-20.679,0l0,14.123l20.679,0c1.776,0.001 3.217,1.442 3.217,3.217l0,6.434c0,1.775 -1.441,3.216 -3.217,3.217l-20.679,0l0,14.123l20.679,0c1.776,0 3.217,1.442 3.217,3.217l0,6.434c0,1.775 -1.441,3.216 -3.217,3.216l-20.679,0l0,14.123l20.679,0c1.776,0.001 3.217,1.442 3.217,3.217l0,6.434c0,1.775 -1.441,3.217 -3.217,3.217l-20.679,0l0,14.123l20.679,0c1.776,0.001 3.217,1.442 3.217,3.217l0,6.434c0,1.775 -1.441,3.216 -3.217,3.217l-20.679,0l0,4.548c0,15.366 -12.475,27.841 -27.841,27.841l-4.548,0l0,20.679c0,1.776 -1.441,3.217 -3.217,3.217l-6.434,0c-1.776,0 -3.217,-1.441 -3.217,-3.217l0,-20.679l-14.123,0l0,20.679c0,1.776 -1.441,3.217 -3.217,3.217l-6.434,0c-1.775,0 -3.217,-1.441 -3.217,-3.217l0,-20.679l-14.123,0l0,20.679c0,1.776 -1.441,3.217 -3.217,3.217l-6.433,0c-1.776,0 -3.217,-1.441 -3.217,-3.217l0,-20.679l-14.123,0l0,20.679c0,1.776 -1.441,3.217 -3.217,3.217l-6.434,0c-1.775,0 -3.217,-1.441 -3.217,-3.217l0,-20.679l-14.123,0l0,20.679c0,1.776 -1.441,3.217 -3.217,3.217Zm103.74,-127.253c0,6.774 -1.062,12.845 -3.187,18.213c-2.124,5.368 -5.152,9.946 -9.085,13.735c-3.932,3.789 -8.697,6.717 -14.295,8.784c-5.597,2.067 -11.927,3.186 -18.988,3.359l0,20.581c0,0.459 -0.115,0.861 -0.345,1.206c-0.229,0.344 -0.631,0.617 -1.205,0.818c-0.574,0.201 -1.335,0.358 -2.282,0.473c-0.947,0.115 -2.139,0.173 -3.574,0.173c-1.435,0 -2.626,-0.058 -3.574,-0.173c-0.947,-0.115 -1.693,-0.272 -2.239,-0.473c-0.545,-0.201 -0.947,-0.474 -1.205,-0.818c-0.259,-0.345 -0.388,-0.747 -0.388,-1.206l0,-20.581c-7.176,-0.173 -13.577,-1.206 -19.203,-3.101c-5.627,-1.894 -10.392,-4.635 -14.295,-8.224c-3.904,-3.588 -6.89,-7.994 -8.956,-13.218c-2.067,-5.224 -3.101,-11.224 -3.101,-17.998l0,-44.005c0,-0.402 0.13,-0.775 0.388,-1.119c0.258,-0.345 0.66,-0.632 1.206,-0.861c0.545,-0.23 1.291,-0.402 2.239,-0.517c0.947,-0.115 2.138,-0.172 3.573,-0.172c1.436,0 2.627,0.057 3.574,0.172c0.947,0.115 1.708,0.287 2.282,0.517c0.574,0.229 0.976,0.516 1.206,0.861c0.229,0.344 0.344,0.717 0.344,1.119l0,42.713c0,4.765 0.632,9.057 1.895,12.874c1.263,3.818 3.157,7.062 5.683,9.731c2.526,2.67 5.727,4.737 9.602,6.201c3.875,1.463 8.396,2.253 13.563,2.368l0,-73.887c0,-0.402 0.129,-0.775 0.388,-1.119c0.258,-0.345 0.689,-0.632 1.291,-0.861c0.603,-0.23 1.378,-0.402 2.326,-0.517c0.947,-0.115 2.081,-0.172 3.401,-0.172c1.435,0 2.627,0.057 3.574,0.172c0.947,0.115 1.708,0.287 2.282,0.517c0.574,0.229 0.976,0.516 1.205,0.861c0.23,0.344 0.345,0.717 0.345,1.119l0,73.887c5.167,-0.058 9.673,-0.847 13.52,-2.368c3.846,-1.522 7.047,-3.617 9.602,-6.287c2.554,-2.669 4.478,-5.884 5.769,-9.645c1.292,-3.76 1.938,-7.937 1.938,-12.529l0,-43.058c0,-0.402 0.115,-0.775 0.344,-1.119c0.23,-0.345 0.632,-0.632 1.206,-0.861c0.574,-0.23 1.321,-0.402 2.239,-0.517c0.919,-0.115 2.124,-0.172 3.617,-0.172c1.378,0 2.54,0.057 3.488,0.172c0.947,0.115 1.693,0.287 2.239,0.517c0.545,0.229 0.947,0.516 1.205,0.861c0.258,0.344 0.388,0.717 0.388,1.119l0,42.455Z" style="fill:#fff;"/><path d="M426.392,189.328c0,1.077 -0.059,1.978 -0.176,2.704c-0.117,0.726 -0.293,1.288 -0.527,1.686c-0.234,0.398 -0.491,0.668 -0.772,0.808c-0.281,0.141 -0.563,0.211 -0.844,0.211c-0.936,0 -2.447,-0.386 -4.531,-1.159c-2.084,-0.773 -4.484,-1.897 -7.201,-3.372c-2.716,-1.476 -5.62,-3.267 -8.711,-5.375c-3.092,-2.107 -6.089,-4.566 -8.993,-7.376c-2.295,1.405 -5.199,2.622 -8.711,3.653c-3.513,1.03 -7.588,1.545 -12.224,1.545c-6.839,0 -12.752,-1.007 -17.74,-3.021c-4.988,-2.013 -9.109,-4.964 -12.364,-8.851c-3.255,-3.888 -5.679,-8.724 -7.272,-14.508c-1.592,-5.784 -2.388,-12.423 -2.388,-19.917c0,-7.213 0.866,-13.734 2.599,-19.566c1.733,-5.831 4.333,-10.795 7.798,-14.893c3.466,-4.098 7.799,-7.26 12.997,-9.485c5.199,-2.224 11.264,-3.337 18.196,-3.337c6.51,0 12.236,1.007 17.177,3.021c4.941,2.014 9.086,4.953 12.435,8.817c3.349,3.864 5.866,8.63 7.552,14.297c1.686,5.667 2.529,12.177 2.529,19.53c0,3.794 -0.222,7.424 -0.667,10.89c-0.445,3.466 -1.147,6.744 -2.108,9.835c-0.96,3.091 -2.166,5.948 -3.618,8.571c-1.452,2.623 -3.161,4.988 -5.128,7.096c3.419,2.81 6.416,5 8.992,6.569c2.576,1.569 4.707,2.751 6.393,3.547c1.687,0.797 2.998,1.37 3.935,1.722c0.936,0.351 1.639,0.749 2.107,1.194c0.469,0.445 0.796,1.077 0.984,1.897c0.187,0.819 0.281,1.908 0.281,3.267Zm-23.886,-53.745c0,-5.152 -0.457,-9.929 -1.37,-14.331c-0.914,-4.403 -2.436,-8.232 -4.567,-11.487c-2.131,-3.255 -4.976,-5.796 -8.536,-7.622c-3.559,-1.827 -7.962,-2.74 -13.207,-2.74c-5.246,0 -9.649,0.972 -13.208,2.915c-3.56,1.944 -6.452,4.567 -8.676,7.869c-2.225,3.302 -3.818,7.13 -4.778,11.486c-0.96,4.356 -1.44,8.969 -1.44,13.84c0,5.339 0.445,10.245 1.335,14.718c0.89,4.473 2.389,8.349 4.496,11.627c2.108,3.279 4.93,5.82 8.466,7.623c3.536,1.803 7.974,2.705 13.313,2.705c5.292,0 9.742,-0.984 13.348,-2.951c3.606,-1.967 6.51,-4.625 8.711,-7.974c2.202,-3.349 3.771,-7.236 4.707,-11.662c0.937,-4.426 1.406,-9.098 1.406,-14.016Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M534.723,179.492c0,0.375 -0.096,0.703 -0.289,0.984c-0.193,0.281 -0.531,0.503 -1.013,0.667c-0.483,0.164 -1.098,0.304 -1.846,0.421c-0.747,0.118 -1.724,0.176 -2.93,0.176c-1.109,0 -2.062,-0.058 -2.858,-0.176c-0.796,-0.117 -1.423,-0.257 -1.881,-0.421c-0.459,-0.164 -0.784,-0.386 -0.977,-0.667c-0.193,-0.281 -0.289,-0.609 -0.289,-0.984l0,-79.176l-0.141,0l-32.036,79.527c-0.14,0.328 -0.339,0.609 -0.597,0.843c-0.257,0.234 -0.632,0.434 -1.124,0.597c-0.492,0.164 -1.077,0.281 -1.756,0.352c-0.679,0.07 -1.487,0.105 -2.424,0.105c-0.984,0 -1.827,-0.047 -2.529,-0.14c-0.703,-0.094 -1.288,-0.223 -1.756,-0.387c-0.469,-0.164 -0.832,-0.363 -1.089,-0.597c-0.258,-0.234 -0.434,-0.492 -0.527,-0.773l-30.631,-79.527l-0.07,0l0,79.176c0,0.375 -0.097,0.703 -0.289,0.984c-0.193,0.281 -0.531,0.503 -1.014,0.667c-0.482,0.164 -1.109,0.304 -1.881,0.421c-0.772,0.118 -1.761,0.176 -2.967,0.176c-1.157,0 -2.122,-0.058 -2.894,-0.176c-0.772,-0.117 -1.387,-0.257 -1.845,-0.421c-0.459,-0.164 -0.772,-0.386 -0.941,-0.667c-0.169,-0.281 -0.253,-0.609 -0.253,-0.984l0,-83.602c0,-1.967 0.523,-3.372 1.569,-4.215c1.046,-0.843 2.212,-1.265 3.496,-1.265l7.419,0c1.522,0 2.853,0.141 3.995,0.422c1.142,0.281 2.14,0.726 2.996,1.335c0.856,0.608 1.569,1.381 2.14,2.318c0.571,0.937 1.07,2.037 1.499,3.302l25.994,65.828l0.351,0l27.047,-65.617c0.524,-1.405 1.095,-2.6 1.713,-3.583c0.619,-0.984 1.297,-1.768 2.035,-2.354c0.738,-0.585 1.558,-1.007 2.462,-1.264c0.904,-0.258 1.951,-0.387 3.141,-0.387l7.779,0c0.715,0 1.393,0.106 2.035,0.316c0.642,0.211 1.189,0.539 1.642,0.984c0.452,0.445 0.821,1.007 1.106,1.686c0.285,0.679 0.428,1.51 0.428,2.494l0,83.602Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M618.185,179.351c0,0.375 -0.082,0.715 -0.246,1.019c-0.164,0.305 -0.48,0.55 -0.949,0.738c-0.468,0.187 -1.1,0.339 -1.896,0.456c-0.797,0.118 -1.827,0.176 -3.092,0.176c-1.639,0 -2.974,-0.07 -4.004,-0.211c-1.031,-0.14 -1.803,-0.398 -2.318,-0.772c-0.516,-0.375 -0.937,-0.797 -1.265,-1.265l-33.441,-45.454l0,45.454c0,0.328 -0.094,0.644 -0.281,0.948c-0.187,0.305 -0.515,0.539 -0.983,0.703c-0.469,0.164 -1.089,0.304 -1.862,0.421c-0.773,0.118 -1.745,0.176 -2.916,0.176c-1.124,0 -2.084,-0.058 -2.88,-0.176c-0.796,-0.117 -1.429,-0.257 -1.897,-0.421c-0.468,-0.164 -0.796,-0.398 -0.983,-0.703c-0.188,-0.304 -0.282,-0.62 -0.282,-0.948l0,-87.255c0,-0.375 0.094,-0.703 0.282,-0.984c0.187,-0.281 0.515,-0.503 0.983,-0.667c0.468,-0.164 1.101,-0.305 1.897,-0.422c0.796,-0.117 1.756,-0.175 2.88,-0.175c1.171,0 2.143,0.058 2.916,0.175c0.773,0.117 1.393,0.258 1.862,0.422c0.468,0.164 0.796,0.386 0.983,0.667c0.187,0.281 0.281,0.609 0.281,0.984l0,40.396l32.176,-40.396c0.281,-0.422 0.609,-0.773 0.984,-1.054c0.375,-0.281 0.831,-0.504 1.37,-0.667c0.538,-0.164 1.194,-0.293 1.967,-0.387c0.773,-0.094 1.768,-0.14 2.986,-0.14c1.218,0 2.201,0.058 2.95,0.175c0.75,0.117 1.347,0.27 1.792,0.457c0.445,0.187 0.749,0.421 0.913,0.702c0.164,0.282 0.246,0.586 0.246,0.914c0,0.609 -0.152,1.218 -0.457,1.826c-0.304,0.609 -0.878,1.452 -1.721,2.53l-30.139,36.04l32.458,43.136c0.796,1.217 1.276,2.049 1.44,2.494c0.164,0.444 0.246,0.807 0.246,1.088Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M713.941,95.609c0,0.89 -0.047,1.663 -0.141,2.318c-0.094,0.656 -0.258,1.183 -0.492,1.581c-0.234,0.398 -0.503,0.691 -0.808,0.878c-0.304,0.188 -0.62,0.281 -0.948,0.281l-33.3,0l0,30.912l31.473,0c0.328,0 0.644,0.082 0.949,0.246c0.304,0.164 0.574,0.433 0.808,0.808c0.234,0.374 0.398,0.878 0.491,1.51c0.094,0.632 0.141,1.44 0.141,2.424c0,0.89 -0.047,1.651 -0.141,2.283c-0.093,0.632 -0.257,1.148 -0.491,1.546c-0.234,0.398 -0.504,0.702 -0.808,0.913c-0.305,0.211 -0.621,0.316 -0.949,0.316l-31.473,0l0,37.867c0,0.328 -0.094,0.644 -0.281,0.948c-0.188,0.305 -0.516,0.539 -0.984,0.703c-0.468,0.164 -1.077,0.304 -1.826,0.421c-0.75,0.118 -1.733,0.176 -2.951,0.176c-1.124,0 -2.084,-0.058 -2.881,-0.176c-0.796,-0.117 -1.428,-0.257 -1.896,-0.421c-0.469,-0.164 -0.797,-0.398 -0.984,-0.703c-0.187,-0.304 -0.281,-0.62 -0.281,-0.948l0,-84.164c0,-1.827 0.48,-3.103 1.44,-3.829c0.96,-0.726 1.979,-1.089 3.056,-1.089l40.888,0c0.328,0 0.644,0.094 0.948,0.281c0.305,0.188 0.574,0.492 0.808,0.914c0.234,0.421 0.398,0.971 0.492,1.65c0.094,0.68 0.141,1.464 0.141,2.354Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M742.534,179.562c0,0.375 -0.094,0.691 -0.281,0.949c-0.187,0.257 -0.492,0.48 -0.913,0.667c-0.422,0.187 -1.007,0.328 -1.757,0.422c-0.749,0.093 -1.709,0.14 -2.88,0.14c-1.124,0 -2.061,-0.047 -2.81,-0.14c-0.75,-0.094 -1.347,-0.235 -1.792,-0.422c-0.445,-0.187 -0.749,-0.41 -0.913,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-63.228c0,-0.328 0.082,-0.632 0.246,-0.913c0.164,-0.281 0.468,-0.516 0.913,-0.703c0.445,-0.187 1.042,-0.328 1.792,-0.422c0.749,-0.093 1.686,-0.14 2.81,-0.14c1.171,0 2.131,0.047 2.88,0.14c0.75,0.094 1.335,0.235 1.757,0.422c0.421,0.187 0.726,0.422 0.913,0.703c0.187,0.281 0.281,0.585 0.281,0.913l0,63.228Zm1.335,-84.585c0,2.716 -0.515,4.566 -1.546,5.55c-1.03,0.983 -2.927,1.475 -5.69,1.475c-2.717,0 -4.579,-0.48 -5.586,-1.44c-1.007,-0.96 -1.51,-2.775 -1.51,-5.445c0,-2.716 0.515,-4.566 1.546,-5.55c1.03,-0.983 2.927,-1.475 5.69,-1.475c2.717,0 4.578,0.48 5.585,1.44c1.007,0.96 1.511,2.775 1.511,5.445Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M800.915,120.479c0,1.03 -0.024,1.897 -0.07,2.599c-0.047,0.703 -0.141,1.253 -0.281,1.651c-0.141,0.398 -0.317,0.703 -0.527,0.913c-0.211,0.211 -0.504,0.317 -0.879,0.317c-0.374,0 -0.831,-0.106 -1.37,-0.317c-0.538,-0.21 -1.147,-0.421 -1.826,-0.632c-0.679,-0.211 -1.44,-0.41 -2.283,-0.597c-0.843,-0.187 -1.757,-0.281 -2.74,-0.281c-1.171,0 -2.319,0.234 -3.443,0.703c-1.124,0.468 -2.306,1.241 -3.548,2.318c-1.241,1.077 -2.54,2.506 -3.899,4.285c-1.358,1.78 -2.857,3.958 -4.496,6.534l0,41.59c0,0.375 -0.094,0.691 -0.281,0.949c-0.187,0.257 -0.492,0.48 -0.913,0.667c-0.422,0.187 -1.007,0.328 -1.756,0.422c-0.75,0.093 -1.71,0.14 -2.881,0.14c-1.124,0 -2.061,-0.047 -2.81,-0.14c-0.749,-0.094 -1.347,-0.235 -1.792,-0.422c-0.444,-0.187 -0.749,-0.41 -0.913,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-63.228c0,-0.375 0.071,-0.691 0.211,-0.949c0.141,-0.257 0.422,-0.491 0.843,-0.702c0.422,-0.211 0.96,-0.351 1.616,-0.422c0.656,-0.07 1.522,-0.105 2.599,-0.105c1.031,0 1.885,0.035 2.565,0.105c0.679,0.071 1.206,0.211 1.58,0.422c0.375,0.211 0.644,0.445 0.808,0.702c0.164,0.258 0.246,0.574 0.246,0.949l0,9.203c1.733,-2.529 3.361,-4.59 4.883,-6.182c1.522,-1.593 2.962,-2.846 4.32,-3.759c1.359,-0.913 2.705,-1.545 4.04,-1.897c1.335,-0.351 2.681,-0.527 4.04,-0.527c0.608,0 1.299,0.036 2.072,0.106c0.773,0.07 1.581,0.199 2.424,0.386c0.843,0.188 1.604,0.398 2.283,0.632c0.679,0.235 1.159,0.469 1.44,0.703c0.281,0.234 0.469,0.457 0.562,0.667c0.094,0.211 0.176,0.48 0.246,0.808c0.07,0.328 0.117,0.808 0.141,1.441c0.023,0.632 0.035,1.487 0.035,2.564Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M907.911,179.562c0,0.375 -0.093,0.691 -0.281,0.949c-0.187,0.257 -0.491,0.48 -0.913,0.667c-0.422,0.187 -1.007,0.328 -1.756,0.422c-0.75,0.093 -1.686,0.14 -2.811,0.14c-1.17,0 -2.131,-0.047 -2.88,-0.14c-0.749,-0.094 -1.346,-0.235 -1.791,-0.422c-0.445,-0.187 -0.761,-0.41 -0.949,-0.667c-0.187,-0.258 -0.281,-0.574 -0.281,-0.949l0,-38.429c0,-2.669 -0.234,-5.105 -0.702,-7.306c-0.469,-2.201 -1.218,-4.098 -2.248,-5.691c-1.031,-1.592 -2.342,-2.81 -3.935,-3.653c-1.592,-0.843 -3.466,-1.264 -5.62,-1.264c-2.67,0 -5.351,1.03 -8.044,3.091c-2.693,2.061 -5.655,5.082 -8.887,9.063l0,44.189c0,0.375 -0.094,0.691 -0.281,0.949c-0.188,0.257 -0.504,0.48 -0.949,0.667c-0.445,0.187 -1.042,0.328 -1.791,0.422c-0.749,0.093 -1.686,0.14 -2.81,0.14c-1.077,0 -2.002,-0.047 -2.775,-0.14c-0.773,-0.094 -1.382,-0.235 -1.827,-0.422c-0.445,-0.187 -0.749,-0.41 -0.913,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-38.429c0,-2.669 -0.258,-5.105 -0.773,-7.306c-0.515,-2.201 -1.288,-4.098 -2.318,-5.691c-1.031,-1.592 -2.33,-2.81 -3.899,-3.653c-1.569,-0.843 -3.431,-1.264 -5.585,-1.264c-2.67,0 -5.363,1.03 -8.08,3.091c-2.716,2.061 -5.667,5.082 -8.852,9.063l0,44.189c0,0.375 -0.093,0.691 -0.281,0.949c-0.187,0.257 -0.491,0.48 -0.913,0.667c-0.421,0.187 -1.007,0.328 -1.756,0.422c-0.75,0.093 -1.71,0.14 -2.881,0.14c-1.124,0 -2.06,-0.047 -2.81,-0.14c-0.749,-0.094 -1.346,-0.235 -1.791,-0.422c-0.445,-0.187 -0.75,-0.41 -0.914,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-63.228c0,-0.375 0.071,-0.691 0.211,-0.949c0.141,-0.257 0.422,-0.491 0.843,-0.702c0.422,-0.211 0.96,-0.351 1.616,-0.422c0.656,-0.07 1.522,-0.105 2.6,-0.105c1.03,0 1.885,0.035 2.564,0.105c0.679,0.071 1.206,0.211 1.581,0.422c0.374,0.211 0.643,0.445 0.807,0.702c0.164,0.258 0.246,0.574 0.246,0.949l0,8.36c3.56,-3.981 7.014,-6.897 10.363,-8.747c3.349,-1.85 6.732,-2.775 10.151,-2.775c2.623,0 4.977,0.305 7.061,0.914c2.084,0.609 3.922,1.463 5.515,2.564c1.592,1.101 2.951,2.412 4.075,3.934c1.124,1.522 2.06,3.22 2.81,5.094c2.107,-2.295 4.11,-4.239 6.006,-5.831c1.897,-1.593 3.724,-2.881 5.48,-3.864c1.757,-0.984 3.466,-1.698 5.129,-2.143c1.662,-0.445 3.337,-0.668 5.023,-0.668c4.075,0 7.494,0.715 10.257,2.143c2.763,1.429 5,3.337 6.709,5.726c1.71,2.388 2.927,5.187 3.653,8.395c0.726,3.208 1.089,6.592 1.089,10.152l0,39.974Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1016.52,116.193c0,0.328 -0.047,0.726 -0.141,1.195c-0.094,0.468 -0.257,1.053 -0.492,1.756l-18.617,60.067c-0.14,0.515 -0.363,0.937 -0.667,1.265c-0.305,0.327 -0.726,0.585 -1.265,0.772c-0.538,0.188 -1.276,0.316 -2.213,0.387c-0.937,0.07 -2.107,0.105 -3.513,0.105c-1.451,0 -2.669,-0.047 -3.653,-0.14c-0.983,-0.094 -1.768,-0.235 -2.353,-0.422c-0.586,-0.187 -1.019,-0.445 -1.3,-0.773c-0.281,-0.328 -0.492,-0.726 -0.632,-1.194l-13.278,-45.876l-0.141,-0.632l-0.14,0.632l-12.295,45.876c-0.14,0.515 -0.363,0.937 -0.667,1.265c-0.304,0.327 -0.761,0.585 -1.37,0.772c-0.609,0.188 -1.393,0.316 -2.353,0.387c-0.961,0.07 -2.143,0.105 -3.548,0.105c-1.452,0 -2.635,-0.047 -3.548,-0.14c-0.913,-0.094 -1.663,-0.235 -2.248,-0.422c-0.586,-0.187 -1.019,-0.445 -1.3,-0.773c-0.281,-0.328 -0.492,-0.726 -0.632,-1.194l-18.477,-60.067c-0.234,-0.703 -0.398,-1.288 -0.492,-1.756c-0.093,-0.469 -0.14,-0.867 -0.14,-1.195c0,-0.421 0.093,-0.761 0.281,-1.018c0.187,-0.258 0.503,-0.469 0.948,-0.633c0.445,-0.164 1.042,-0.269 1.792,-0.316c0.749,-0.047 1.662,-0.07 2.74,-0.07c1.311,0 2.365,0.035 3.161,0.105c0.796,0.071 1.405,0.188 1.827,0.352c0.421,0.164 0.726,0.398 0.913,0.702c0.187,0.305 0.351,0.668 0.492,1.089l15.245,52.128l0.14,0.633l0.141,-0.633l13.98,-52.128c0.094,-0.421 0.246,-0.784 0.457,-1.089c0.211,-0.304 0.527,-0.538 0.948,-0.702c0.422,-0.164 0.996,-0.281 1.722,-0.352c0.726,-0.07 1.674,-0.105 2.845,-0.105c1.124,0 2.049,0.035 2.775,0.105c0.726,0.071 1.3,0.188 1.721,0.352c0.422,0.164 0.726,0.386 0.913,0.667c0.188,0.281 0.328,0.609 0.422,0.984l15.104,52.268l0.141,0.633l0.07,-0.633l15.035,-52.128c0.093,-0.421 0.245,-0.784 0.456,-1.089c0.211,-0.304 0.539,-0.538 0.984,-0.702c0.445,-0.164 1.054,-0.281 1.826,-0.352c0.773,-0.07 1.768,-0.105 2.986,-0.105c1.124,0 2.026,0.023 2.705,0.07c0.679,0.047 1.218,0.164 1.616,0.351c0.398,0.188 0.679,0.399 0.843,0.633c0.164,0.234 0.246,0.562 0.246,0.983Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1076.94,179.632c0,0.563 -0.187,0.984 -0.562,1.265c-0.375,0.281 -0.89,0.492 -1.546,0.632c-0.655,0.141 -1.616,0.211 -2.88,0.211c-1.218,0 -2.19,-0.07 -2.916,-0.211c-0.726,-0.14 -1.252,-0.351 -1.58,-0.632c-0.328,-0.281 -0.492,-0.702 -0.492,-1.265l0,-6.322c-2.763,2.95 -5.843,5.245 -9.238,6.885c-3.396,1.639 -6.991,2.458 -10.784,2.458c-3.326,0 -6.335,-0.433 -9.028,-1.299c-2.693,-0.867 -4.988,-2.12 -6.885,-3.759c-1.897,-1.639 -3.372,-3.653 -4.426,-6.042c-1.054,-2.388 -1.581,-5.105 -1.581,-8.149c0,-3.56 0.726,-6.651 2.178,-9.274c1.452,-2.622 3.536,-4.8 6.253,-6.533c2.716,-1.733 6.042,-3.033 9.976,-3.899c3.934,-0.867 8.36,-1.3 13.278,-1.3l8.711,0l0,-4.918c0,-2.435 -0.257,-4.59 -0.772,-6.463c-0.516,-1.874 -1.347,-3.431 -2.495,-4.672c-1.147,-1.241 -2.634,-2.178 -4.461,-2.81c-1.826,-0.632 -4.074,-0.949 -6.744,-0.949c-2.857,0 -5.421,0.34 -7.693,1.019c-2.271,0.679 -4.262,1.429 -5.971,2.248c-1.71,0.82 -3.138,1.569 -4.286,2.248c-1.147,0.679 -2.002,1.019 -2.564,1.019c-0.375,0 -0.703,-0.094 -0.984,-0.281c-0.281,-0.187 -0.527,-0.468 -0.737,-0.843c-0.211,-0.375 -0.363,-0.855 -0.457,-1.44c-0.094,-0.586 -0.14,-1.23 -0.14,-1.932c0,-1.171 0.081,-2.096 0.245,-2.775c0.164,-0.679 0.562,-1.323 1.195,-1.932c0.632,-0.609 1.721,-1.323 3.267,-2.143c1.545,-0.82 3.325,-1.569 5.339,-2.248c2.014,-0.679 4.215,-1.241 6.604,-1.686c2.388,-0.445 4.8,-0.668 7.236,-0.668c4.543,0 8.407,0.516 11.592,1.546c3.185,1.03 5.761,2.541 7.728,4.531c1.967,1.991 3.395,4.461 4.285,7.412c0.89,2.951 1.335,6.393 1.335,10.327l0,42.644Zm-11.522,-28.874l-9.905,0c-3.185,0 -5.949,0.269 -8.29,0.808c-2.342,0.539 -4.286,1.335 -5.832,2.389c-1.545,1.054 -2.681,2.318 -3.407,3.793c-0.726,1.476 -1.089,3.174 -1.089,5.094c0,3.278 1.042,5.889 3.127,7.833c2.084,1.944 4.999,2.916 8.746,2.916c3.044,0 5.866,-0.773 8.466,-2.319c2.599,-1.545 5.327,-3.91 8.184,-7.095l0,-13.419Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1135.18,120.479c0,1.03 -0.023,1.897 -0.07,2.599c-0.047,0.703 -0.14,1.253 -0.281,1.651c-0.14,0.398 -0.316,0.703 -0.527,0.913c-0.211,0.211 -0.503,0.317 -0.878,0.317c-0.375,0 -0.831,-0.106 -1.37,-0.317c-0.539,-0.21 -1.147,-0.421 -1.827,-0.632c-0.679,-0.211 -1.44,-0.41 -2.283,-0.597c-0.843,-0.187 -1.756,-0.281 -2.74,-0.281c-1.171,0 -2.318,0.234 -3.442,0.703c-1.124,0.468 -2.307,1.241 -3.548,2.318c-1.241,1.077 -2.541,2.506 -3.899,4.285c-1.358,1.78 -2.857,3.958 -4.496,6.534l0,41.59c0,0.375 -0.094,0.691 -0.281,0.949c-0.188,0.257 -0.492,0.48 -0.914,0.667c-0.421,0.187 -1.007,0.328 -1.756,0.422c-0.749,0.093 -1.709,0.14 -2.88,0.14c-1.124,0 -2.061,-0.047 -2.811,-0.14c-0.749,-0.094 -1.346,-0.235 -1.791,-0.422c-0.445,-0.187 -0.749,-0.41 -0.913,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-63.228c0,-0.375 0.07,-0.691 0.211,-0.949c0.14,-0.257 0.421,-0.491 0.843,-0.702c0.421,-0.211 0.96,-0.351 1.615,-0.422c0.656,-0.07 1.523,-0.105 2.6,-0.105c1.03,0 1.885,0.035 2.564,0.105c0.679,0.071 1.206,0.211 1.581,0.422c0.375,0.211 0.644,0.445 0.808,0.702c0.164,0.258 0.246,0.574 0.246,0.949l0,9.203c1.733,-2.529 3.36,-4.59 4.882,-6.182c1.522,-1.593 2.963,-2.846 4.321,-3.759c1.358,-0.913 2.705,-1.545 4.039,-1.897c1.335,-0.351 2.682,-0.527 4.04,-0.527c0.609,0 1.3,0.036 2.073,0.106c0.772,0.07 1.58,0.199 2.423,0.386c0.843,0.188 1.604,0.398 2.284,0.632c0.679,0.235 1.159,0.469 1.44,0.703c0.281,0.234 0.468,0.457 0.562,0.667c0.093,0.211 0.175,0.48 0.246,0.808c0.07,0.328 0.117,0.808 0.14,1.441c0.024,0.632 0.035,1.487 0.035,2.564Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1200.45,145.208c0,1.827 -0.459,3.126 -1.376,3.899c-0.917,0.773 -1.964,1.159 -3.141,1.159l-41.64,0c0,3.513 0.353,6.675 1.059,9.485c0.706,2.81 1.882,5.222 3.53,7.236c1.647,2.014 3.789,3.559 6.424,4.637c2.636,1.077 5.86,1.615 9.672,1.615c3.012,0 5.694,-0.245 8.047,-0.737c2.354,-0.492 4.389,-1.042 6.107,-1.651c1.718,-0.609 3.13,-1.159 4.236,-1.651c1.106,-0.492 1.942,-0.738 2.507,-0.738c0.329,0 0.623,0.082 0.882,0.246c0.259,0.164 0.458,0.41 0.6,0.738c0.141,0.328 0.247,0.784 0.317,1.37c0.071,0.585 0.106,1.299 0.106,2.142c0,0.609 -0.023,1.136 -0.07,1.581c-0.047,0.445 -0.105,0.843 -0.175,1.194c-0.071,0.352 -0.188,0.668 -0.352,0.949c-0.164,0.281 -0.374,0.55 -0.632,0.808c-0.258,0.257 -1.019,0.679 -2.283,1.264c-1.265,0.586 -2.904,1.16 -4.918,1.722c-2.014,0.562 -4.344,1.065 -6.99,1.51c-2.647,0.445 -5.468,0.667 -8.466,0.667c-5.199,0 -9.753,-0.726 -13.664,-2.177c-3.911,-1.452 -7.201,-3.607 -9.871,-6.464c-2.67,-2.857 -4.683,-6.44 -6.042,-10.749c-1.358,-4.309 -2.037,-9.32 -2.037,-15.034c0,-5.433 0.702,-10.316 2.108,-14.648c1.405,-4.332 3.43,-8.009 6.077,-11.03c2.646,-3.021 5.842,-5.339 9.589,-6.955c3.747,-1.616 7.939,-2.424 12.576,-2.424c4.964,0 9.191,0.797 12.68,2.389c3.49,1.592 6.358,3.735 8.606,6.428c2.249,2.693 3.9,5.855 4.953,9.485c1.054,3.629 1.581,7.505 1.581,11.627l0,2.107Zm-11.662,-3.442c0.14,-6.089 -1.214,-10.866 -4.065,-14.332c-2.85,-3.466 -7.079,-5.199 -12.687,-5.199c-2.875,0 -5.396,0.539 -7.564,1.616c-2.167,1.077 -3.982,2.506 -5.443,4.285c-1.461,1.78 -2.592,3.853 -3.393,6.218c-0.801,2.365 -1.248,4.836 -1.343,7.412l34.495,0Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M379.752,276.089c0,0.493 -0.016,0.924 -0.047,1.294c-0.03,0.369 -0.084,0.693 -0.161,0.97c-0.077,0.277 -0.177,0.524 -0.301,0.739c-0.123,0.216 -0.338,0.478 -0.646,0.786c-0.308,0.308 -0.955,0.778 -1.941,1.409c-0.986,0.631 -2.21,1.247 -3.673,1.848c-1.463,0.601 -3.142,1.109 -5.036,1.525c-1.894,0.416 -3.966,0.623 -6.214,0.623c-3.881,0 -7.385,-0.646 -10.511,-1.94c-3.127,-1.294 -5.791,-3.203 -7.993,-5.729c-2.203,-2.526 -3.897,-5.645 -5.083,-9.356c-1.185,-3.712 -1.778,-7.985 -1.778,-12.821c0,-4.959 0.639,-9.379 1.917,-13.26c1.278,-3.881 3.072,-7.169 5.383,-9.865c2.31,-2.695 5.074,-4.751 8.293,-6.168c3.219,-1.417 6.784,-2.125 10.696,-2.125c1.725,0 3.403,0.162 5.036,0.485c1.632,0.324 3.142,0.732 4.528,1.225c1.386,0.492 2.618,1.062 3.696,1.709c1.078,0.647 1.825,1.178 2.241,1.594c0.416,0.416 0.685,0.732 0.808,0.947c0.123,0.216 0.224,0.47 0.301,0.763c0.077,0.292 0.138,0.639 0.184,1.039c0.047,0.4 0.07,0.878 0.07,1.432c0,0.616 -0.031,1.14 -0.093,1.571c-0.062,0.431 -0.155,0.793 -0.279,1.086c-0.124,0.293 -0.271,0.508 -0.441,0.647c-0.171,0.138 -0.38,0.208 -0.628,0.208c-0.433,0 -1.036,-0.301 -1.811,-0.901c-0.774,-0.601 -1.773,-1.263 -2.996,-1.987c-1.223,-0.724 -2.71,-1.386 -4.459,-1.987c-1.749,-0.6 -3.847,-0.901 -6.294,-0.901c-2.663,0 -5.086,0.532 -7.269,1.594c-2.183,1.063 -4.049,2.626 -5.597,4.69c-1.549,2.064 -2.748,4.582 -3.6,7.554c-0.852,2.972 -1.278,6.368 -1.278,10.188c0,3.788 0.411,7.138 1.231,10.049c0.821,2.91 1.998,5.344 3.53,7.3c1.533,1.956 3.415,3.434 5.644,4.435c2.23,1.001 4.753,1.502 7.571,1.502c2.384,0 4.467,-0.293 6.247,-0.878c1.781,-0.585 3.298,-1.24 4.552,-1.964c1.254,-0.724 2.283,-1.378 3.089,-1.963c0.805,-0.586 1.44,-0.878 1.904,-0.878c0.217,0 0.403,0.046 0.558,0.138c0.154,0.093 0.278,0.27 0.371,0.532c0.093,0.262 0.163,0.623 0.209,1.085c0.046,0.462 0.07,1.048 0.07,1.756Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M428.079,262.136c0,3.388 -0.446,6.507 -1.339,9.356c-0.894,2.849 -2.226,5.306 -3.997,7.369c-1.771,2.064 -3.989,3.673 -6.653,4.828c-2.664,1.156 -5.752,1.733 -9.264,1.733c-3.419,0 -6.399,-0.508 -8.94,-1.525c-2.541,-1.016 -4.659,-2.495 -6.353,-4.435c-1.694,-1.941 -2.957,-4.297 -3.788,-7.069c-0.832,-2.772 -1.248,-5.914 -1.248,-9.425c0,-3.388 0.439,-6.507 1.317,-9.356c0.878,-2.849 2.202,-5.306 3.973,-7.37c1.772,-2.063 3.982,-3.665 6.63,-4.805c2.649,-1.139 5.745,-1.709 9.287,-1.709c3.419,0 6.399,0.508 8.94,1.525c2.541,1.016 4.659,2.494 6.353,4.435c1.694,1.94 2.965,4.297 3.812,7.069c0.847,2.772 1.27,5.898 1.27,9.379Zm-7.9,0.508c0,-2.248 -0.21,-4.374 -0.63,-6.376c-0.419,-2.002 -1.111,-3.757 -2.074,-5.267c-0.964,-1.509 -2.269,-2.703 -3.917,-3.58c-1.647,-0.878 -3.698,-1.317 -6.153,-1.317c-2.269,0 -4.219,0.4 -5.851,1.201c-1.632,0.801 -2.976,1.933 -4.033,3.396c-1.056,1.463 -1.841,3.196 -2.354,5.198c-0.513,2.002 -0.769,4.189 -0.769,6.56c0,2.28 0.21,4.42 0.629,6.423c0.42,2.002 1.119,3.75 2.098,5.244c0.979,1.493 2.292,2.679 3.939,3.557c1.648,0.878 3.699,1.317 6.154,1.317c2.238,0 4.181,-0.401 5.828,-1.201c1.647,-0.801 2.999,-1.925 4.056,-3.373c1.056,-1.448 1.833,-3.173 2.331,-5.175c0.497,-2.002 0.746,-4.204 0.746,-6.607Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M500.987,283.389c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.493,0.062 -1.109,0.092 -1.848,0.092c-0.77,0 -1.401,-0.03 -1.894,-0.092c-0.493,-0.062 -0.886,-0.154 -1.178,-0.277c-0.293,-0.123 -0.501,-0.27 -0.624,-0.439c-0.123,-0.17 -0.185,-0.377 -0.185,-0.624l0,-25.273c0,-1.755 -0.154,-3.357 -0.462,-4.805c-0.308,-1.447 -0.801,-2.695 -1.478,-3.742c-0.678,-1.047 -1.54,-1.848 -2.588,-2.403c-1.047,-0.554 -2.279,-0.831 -3.696,-0.831c-1.756,0 -3.519,0.677 -5.29,2.033c-1.771,1.355 -3.719,3.342 -5.845,5.96l0,29.061c0,0.247 -0.061,0.454 -0.184,0.624c-0.124,0.169 -0.332,0.316 -0.624,0.439c-0.293,0.123 -0.685,0.215 -1.178,0.277c-0.493,0.062 -1.109,0.092 -1.848,0.092c-0.709,0 -1.317,-0.03 -1.825,-0.092c-0.509,-0.062 -0.909,-0.154 -1.202,-0.277c-0.292,-0.123 -0.492,-0.27 -0.6,-0.439c-0.108,-0.17 -0.162,-0.377 -0.162,-0.624l0,-25.273c0,-1.755 -0.169,-3.357 -0.508,-4.805c-0.339,-1.447 -0.847,-2.695 -1.525,-3.742c-0.678,-1.047 -1.532,-1.848 -2.564,-2.403c-1.032,-0.554 -2.256,-0.831 -3.673,-0.831c-1.756,0 -3.527,0.677 -5.314,2.033c-1.786,1.355 -3.727,3.342 -5.821,5.96l0,29.061c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.6,0.439c-0.278,0.123 -0.663,0.215 -1.156,0.277c-0.492,0.062 -1.124,0.092 -1.894,0.092c-0.739,0 -1.355,-0.03 -1.848,-0.092c-0.493,-0.062 -0.885,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.27 -0.601,-0.439c-0.108,-0.17 -0.161,-0.377 -0.161,-0.624l0,-41.582c0,-0.246 0.046,-0.454 0.138,-0.624c0.093,-0.169 0.277,-0.323 0.555,-0.462c0.277,-0.138 0.631,-0.231 1.062,-0.277c0.432,-0.046 1.001,-0.069 1.71,-0.069c0.677,0 1.24,0.023 1.686,0.069c0.447,0.046 0.793,0.139 1.04,0.277c0.246,0.139 0.423,0.293 0.531,0.462c0.108,0.17 0.162,0.378 0.162,0.624l0,5.498c2.341,-2.618 4.612,-4.535 6.815,-5.752c2.202,-1.217 4.427,-1.825 6.676,-1.825c1.725,0 3.273,0.2 4.643,0.601c1.371,0.4 2.58,0.962 3.627,1.686c1.047,0.724 1.941,1.586 2.68,2.587c0.739,1.001 1.355,2.118 1.848,3.35c1.386,-1.509 2.703,-2.788 3.95,-3.835c1.248,-1.047 2.449,-1.894 3.604,-2.541c1.155,-0.647 2.279,-1.117 3.373,-1.409c1.093,-0.293 2.194,-0.439 3.303,-0.439c2.68,0 4.929,0.47 6.746,1.409c1.817,0.939 3.288,2.195 4.412,3.766c1.124,1.57 1.925,3.411 2.403,5.521c0.477,2.11 0.716,4.335 0.716,6.676l0,26.289Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M576.574,283.389c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.492,0.062 -1.108,0.092 -1.848,0.092c-0.77,0 -1.401,-0.03 -1.894,-0.092c-0.493,-0.062 -0.886,-0.154 -1.178,-0.277c-0.293,-0.123 -0.501,-0.27 -0.624,-0.439c-0.123,-0.17 -0.185,-0.377 -0.185,-0.624l0,-25.273c0,-1.755 -0.154,-3.357 -0.462,-4.805c-0.308,-1.447 -0.801,-2.695 -1.478,-3.742c-0.678,-1.047 -1.54,-1.848 -2.588,-2.403c-1.047,-0.554 -2.279,-0.831 -3.696,-0.831c-1.755,0 -3.519,0.677 -5.29,2.033c-1.771,1.355 -3.719,3.342 -5.844,5.96l0,29.061c0,0.247 -0.062,0.454 -0.185,0.624c-0.124,0.169 -0.331,0.316 -0.624,0.439c-0.293,0.123 -0.685,0.215 -1.178,0.277c-0.493,0.062 -1.109,0.092 -1.848,0.092c-0.709,0 -1.317,-0.03 -1.825,-0.092c-0.509,-0.062 -0.909,-0.154 -1.202,-0.277c-0.292,-0.123 -0.492,-0.27 -0.6,-0.439c-0.108,-0.17 -0.162,-0.377 -0.162,-0.624l0,-25.273c0,-1.755 -0.169,-3.357 -0.508,-4.805c-0.339,-1.447 -0.847,-2.695 -1.525,-3.742c-0.677,-1.047 -1.532,-1.848 -2.564,-2.403c-1.032,-0.554 -2.256,-0.831 -3.673,-0.831c-1.756,0 -3.527,0.677 -5.313,2.033c-1.787,1.355 -3.727,3.342 -5.822,5.96l0,29.061c0,0.247 -0.061,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.6,0.439c-0.278,0.123 -0.663,0.215 -1.155,0.277c-0.493,0.062 -1.125,0.092 -1.895,0.092c-0.739,0 -1.355,-0.03 -1.848,-0.092c-0.493,-0.062 -0.885,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.27 -0.601,-0.439c-0.107,-0.17 -0.161,-0.377 -0.161,-0.624l0,-41.582c0,-0.246 0.046,-0.454 0.138,-0.624c0.093,-0.169 0.278,-0.323 0.555,-0.462c0.277,-0.138 0.631,-0.231 1.062,-0.277c0.432,-0.046 1.001,-0.069 1.71,-0.069c0.678,0 1.24,0.023 1.686,0.069c0.447,0.046 0.793,0.139 1.04,0.277c0.246,0.139 0.423,0.293 0.531,0.462c0.108,0.17 0.162,0.378 0.162,0.624l0,5.498c2.341,-2.618 4.612,-4.535 6.815,-5.752c2.202,-1.217 4.427,-1.825 6.676,-1.825c1.725,0 3.273,0.2 4.643,0.601c1.371,0.4 2.58,0.962 3.627,1.686c1.047,0.724 1.941,1.586 2.68,2.587c0.739,1.001 1.355,2.118 1.848,3.35c1.386,-1.509 2.703,-2.788 3.95,-3.835c1.248,-1.047 2.449,-1.894 3.604,-2.541c1.155,-0.647 2.279,-1.117 3.373,-1.409c1.093,-0.293 2.195,-0.439 3.303,-0.439c2.68,0 4.929,0.47 6.746,1.409c1.817,0.939 3.288,2.195 4.412,3.766c1.125,1.57 1.925,3.411 2.403,5.521c0.477,2.11 0.716,4.335 0.716,6.676l0,26.289Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M626.103,283.389c0,0.247 -0.054,0.454 -0.162,0.624c-0.108,0.169 -0.3,0.316 -0.577,0.439c-0.278,0.123 -0.639,0.215 -1.086,0.277c-0.447,0.062 -0.993,0.092 -1.64,0.092c-0.709,0 -1.286,-0.03 -1.733,-0.092c-0.447,-0.062 -0.801,-0.154 -1.063,-0.277c-0.261,-0.123 -0.438,-0.27 -0.531,-0.439c-0.092,-0.17 -0.138,-0.377 -0.138,-0.624l0,-5.498c-2.372,2.618 -4.713,4.528 -7.023,5.729c-2.31,1.201 -4.651,1.802 -7.023,1.802c-2.772,0 -5.105,-0.462 -7,-1.386c-1.894,-0.924 -3.426,-2.179 -4.597,-3.766c-1.17,-1.586 -2.01,-3.434 -2.518,-5.544c-0.508,-2.11 -0.762,-4.674 -0.762,-7.693l0,-25.226c0,-0.246 0.054,-0.454 0.162,-0.624c0.107,-0.169 0.315,-0.323 0.623,-0.462c0.308,-0.138 0.709,-0.231 1.202,-0.277c0.492,-0.046 1.108,-0.069 1.848,-0.069c0.739,0 1.355,0.023 1.848,0.069c0.493,0.046 0.885,0.139 1.178,0.277c0.292,0.139 0.5,0.293 0.624,0.462c0.123,0.17 0.184,0.378 0.184,0.624l0,24.21c0,2.433 0.178,4.382 0.532,5.845c0.354,1.463 0.893,2.71 1.617,3.742c0.724,1.032 1.64,1.833 2.749,2.403c1.109,0.569 2.402,0.854 3.881,0.854c1.91,0 3.812,-0.677 5.706,-2.033c1.894,-1.355 3.904,-3.342 6.029,-5.96l0,-29.061c0,-0.246 0.054,-0.454 0.162,-0.624c0.108,-0.169 0.316,-0.323 0.624,-0.462c0.308,-0.138 0.7,-0.231 1.178,-0.277c0.477,-0.046 1.101,-0.069 1.871,-0.069c0.739,0 1.355,0.023 1.848,0.069c0.493,0.046 0.878,0.139 1.155,0.277c0.277,0.139 0.485,0.293 0.624,0.462c0.139,0.17 0.208,0.378 0.208,0.624l0,41.582Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M676.001,283.389c0,0.247 -0.061,0.454 -0.184,0.624c-0.124,0.169 -0.324,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.493,0.062 -1.109,0.092 -1.848,0.092c-0.77,0 -1.402,-0.03 -1.894,-0.092c-0.493,-0.062 -0.878,-0.154 -1.155,-0.277c-0.278,-0.123 -0.478,-0.27 -0.601,-0.439c-0.123,-0.17 -0.185,-0.377 -0.185,-0.624l0,-24.349c0,-2.371 -0.185,-4.281 -0.554,-5.729c-0.37,-1.447 -0.909,-2.695 -1.617,-3.742c-0.709,-1.047 -1.625,-1.848 -2.749,-2.403c-1.125,-0.554 -2.426,-0.831 -3.905,-0.831c-1.909,0 -3.819,0.677 -5.729,2.033c-1.909,1.355 -3.911,3.342 -6.006,5.96l0,29.061c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.6,0.439c-0.278,0.123 -0.663,0.215 -1.155,0.277c-0.493,0.062 -1.125,0.092 -1.895,0.092c-0.739,0 -1.355,-0.03 -1.848,-0.092c-0.493,-0.062 -0.885,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.27 -0.601,-0.439c-0.107,-0.17 -0.161,-0.377 -0.161,-0.624l0,-41.582c0,-0.246 0.046,-0.454 0.138,-0.624c0.093,-0.169 0.277,-0.323 0.555,-0.462c0.277,-0.138 0.631,-0.231 1.062,-0.277c0.432,-0.046 1.001,-0.069 1.71,-0.069c0.677,0 1.24,0.023 1.686,0.069c0.447,0.046 0.793,0.139 1.04,0.277c0.246,0.139 0.423,0.293 0.531,0.462c0.108,0.17 0.162,0.378 0.162,0.624l0,5.498c2.341,-2.618 4.674,-4.535 6.999,-5.752c2.326,-1.217 4.675,-1.825 7.046,-1.825c2.772,0 5.106,0.47 7,1.409c1.894,0.939 3.427,2.195 4.597,3.766c1.171,1.57 2.01,3.411 2.518,5.521c0.508,2.11 0.762,4.643 0.762,7.6l0,25.365Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M697.532,283.389c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.493,0.062 -1.124,0.092 -1.894,0.092c-0.739,0 -1.355,-0.03 -1.848,-0.092c-0.493,-0.062 -0.886,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.27 -0.601,-0.439c-0.108,-0.17 -0.162,-0.377 -0.162,-0.624l0,-41.582c0,-0.216 0.054,-0.416 0.162,-0.601c0.108,-0.184 0.308,-0.338 0.601,-0.462c0.292,-0.123 0.685,-0.215 1.178,-0.277c0.493,-0.061 1.109,-0.092 1.848,-0.092c0.77,0 1.401,0.031 1.894,0.092c0.493,0.062 0.878,0.154 1.155,0.277c0.278,0.124 0.478,0.278 0.601,0.462c0.123,0.185 0.185,0.385 0.185,0.601l0,41.582Zm0.878,-55.628c0,1.787 -0.339,3.004 -1.017,3.65c-0.677,0.647 -1.925,0.971 -3.742,0.971c-1.787,0 -3.011,-0.316 -3.673,-0.947c-0.663,-0.632 -0.994,-1.825 -0.994,-3.581c0,-1.787 0.339,-3.003 1.017,-3.65c0.677,-0.647 1.925,-0.97 3.742,-0.97c1.787,0 3.011,0.315 3.673,0.947c0.663,0.631 0.994,1.825 0.994,3.58Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M733.246,280.34c0,0.893 -0.061,1.601 -0.185,2.125c-0.123,0.524 -0.308,0.909 -0.554,1.155c-0.246,0.247 -0.616,0.478 -1.109,0.693c-0.493,0.216 -1.055,0.393 -1.686,0.532c-0.632,0.138 -1.302,0.254 -2.01,0.346c-0.708,0.092 -1.417,0.139 -2.125,0.139c-2.156,0 -4.005,-0.285 -5.545,-0.855c-1.54,-0.57 -2.803,-1.432 -3.788,-2.587c-0.986,-1.155 -1.702,-2.619 -2.149,-4.39c-0.446,-1.771 -0.67,-3.858 -0.67,-6.26l0,-24.303l-5.821,0c-0.462,0 -0.832,-0.246 -1.109,-0.739c-0.277,-0.493 -0.416,-1.293 -0.416,-2.402c0,-0.586 0.039,-1.078 0.116,-1.479c0.077,-0.4 0.177,-0.731 0.3,-0.993c0.123,-0.262 0.285,-0.447 0.485,-0.555c0.2,-0.107 0.424,-0.161 0.67,-0.161l5.775,0l0,-9.888c0,-0.215 0.054,-0.415 0.162,-0.6c0.108,-0.185 0.308,-0.347 0.601,-0.485c0.292,-0.139 0.685,-0.239 1.178,-0.301c0.493,-0.061 1.109,-0.092 1.848,-0.092c0.77,0 1.401,0.031 1.894,0.092c0.493,0.062 0.878,0.162 1.155,0.301c0.278,0.138 0.478,0.3 0.601,0.485c0.123,0.185 0.185,0.385 0.185,0.6l0,9.888l10.673,0c0.246,0 0.462,0.054 0.646,0.161c0.185,0.108 0.347,0.293 0.486,0.555c0.138,0.262 0.238,0.593 0.3,0.993c0.061,0.401 0.092,0.893 0.092,1.479c0,1.109 -0.138,1.909 -0.416,2.402c-0.277,0.493 -0.646,0.739 -1.108,0.739l-10.673,0l0,23.194c0,2.865 0.423,5.028 1.27,6.491c0.847,1.464 2.364,2.195 4.551,2.195c0.709,0 1.34,-0.069 1.895,-0.208c0.554,-0.138 1.047,-0.285 1.478,-0.439c0.431,-0.154 0.801,-0.3 1.109,-0.439c0.308,-0.138 0.585,-0.208 0.832,-0.208c0.154,0 0.3,0.039 0.439,0.116c0.138,0.077 0.246,0.223 0.323,0.439c0.077,0.215 0.146,0.508 0.208,0.878c0.061,0.369 0.092,0.831 0.092,1.386Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M762.261,284.544l-5.544,15.293c-0.185,0.493 -0.654,0.87 -1.409,1.132c-0.755,0.262 -1.902,0.393 -3.442,0.393c-0.801,0 -1.448,-0.039 -1.941,-0.116c-0.493,-0.077 -0.87,-0.208 -1.132,-0.392c-0.261,-0.185 -0.408,-0.432 -0.439,-0.74c-0.03,-0.308 0.047,-0.677 0.231,-1.108l5.73,-14.462c-0.278,-0.123 -0.539,-0.323 -0.786,-0.6c-0.246,-0.278 -0.416,-0.57 -0.508,-0.878l-14.831,-39.734c-0.247,-0.647 -0.37,-1.155 -0.37,-1.525c0,-0.37 0.123,-0.662 0.37,-0.878c0.246,-0.215 0.647,-0.362 1.201,-0.439c0.555,-0.077 1.294,-0.115 2.218,-0.115c0.924,0 1.648,0.023 2.171,0.069c0.524,0.046 0.94,0.131 1.248,0.254c0.308,0.123 0.531,0.3 0.67,0.531c0.138,0.231 0.285,0.547 0.439,0.948l11.874,33.358l0.138,0l11.459,-33.543c0.184,-0.585 0.408,-0.963 0.669,-1.132c0.262,-0.17 0.655,-0.293 1.179,-0.37c0.523,-0.077 1.278,-0.115 2.264,-0.115c0.862,0 1.57,0.038 2.125,0.115c0.554,0.077 0.962,0.224 1.224,0.439c0.262,0.216 0.393,0.508 0.393,0.878c0,0.37 -0.092,0.832 -0.277,1.386l-14.924,41.351Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M840.528,267.773c0,2.803 -0.516,5.298 -1.548,7.485c-1.031,2.186 -2.464,4.042 -4.296,5.567c-1.833,1.525 -3.989,2.672 -6.469,3.442c-2.479,0.77 -5.151,1.155 -8.016,1.155c-2.002,0 -3.858,-0.169 -5.567,-0.508c-1.71,-0.339 -3.234,-0.755 -4.574,-1.248c-1.34,-0.492 -2.464,-1.001 -3.373,-1.524c-0.909,-0.524 -1.54,-0.971 -1.894,-1.34c-0.355,-0.37 -0.616,-0.84 -0.786,-1.409c-0.169,-0.57 -0.254,-1.333 -0.254,-2.287c0,-0.678 0.031,-1.24 0.093,-1.687c0.061,-0.446 0.154,-0.808 0.277,-1.086c0.123,-0.277 0.277,-0.469 0.462,-0.577c0.185,-0.108 0.4,-0.162 0.647,-0.162c0.431,0 1.039,0.262 1.825,0.786c0.785,0.523 1.794,1.093 3.026,1.709c1.232,0.616 2.718,1.194 4.458,1.733c1.741,0.539 3.75,0.808 6.03,0.808c1.725,0 3.303,-0.231 4.736,-0.693c1.432,-0.462 2.664,-1.116 3.696,-1.963c1.032,-0.847 1.825,-1.887 2.379,-3.119c0.555,-1.232 0.832,-2.634 0.832,-4.204c0,-1.695 -0.385,-3.142 -1.155,-4.343c-0.77,-1.202 -1.787,-2.257 -3.05,-3.165c-1.262,-0.909 -2.702,-1.741 -4.32,-2.495c-1.617,-0.755 -3.272,-1.525 -4.966,-2.31c-1.694,-0.786 -3.342,-1.656 -4.944,-2.611c-1.602,-0.955 -3.034,-2.079 -4.297,-3.373c-1.263,-1.293 -2.287,-2.81 -3.072,-4.551c-0.786,-1.74 -1.178,-3.827 -1.178,-6.26c0,-2.495 0.454,-4.72 1.363,-6.676c0.908,-1.956 2.171,-3.596 3.788,-4.921c1.617,-1.324 3.542,-2.333 5.775,-3.026c2.234,-0.693 4.644,-1.04 7.231,-1.04c1.325,0 2.657,0.116 3.997,0.347c1.34,0.231 2.602,0.539 3.788,0.924c1.186,0.385 2.241,0.816 3.165,1.294c0.924,0.477 1.532,0.862 1.825,1.155c0.293,0.292 0.485,0.523 0.578,0.693c0.092,0.169 0.169,0.385 0.231,0.647c0.061,0.261 0.107,0.577 0.138,0.947c0.031,0.369 0.046,0.847 0.046,1.432c0,0.554 -0.023,1.047 -0.069,1.479c-0.046,0.431 -0.115,0.793 -0.208,1.085c-0.092,0.293 -0.223,0.508 -0.392,0.647c-0.17,0.139 -0.362,0.208 -0.578,0.208c-0.339,0 -0.87,-0.216 -1.594,-0.647c-0.724,-0.431 -1.609,-0.916 -2.657,-1.455c-1.047,-0.539 -2.287,-1.032 -3.719,-1.479c-1.432,-0.446 -3.042,-0.67 -4.828,-0.67c-1.663,0 -3.111,0.224 -4.343,0.67c-1.232,0.447 -2.249,1.04 -3.049,1.779c-0.801,0.739 -1.402,1.617 -1.802,2.634c-0.401,1.016 -0.601,2.094 -0.601,3.234c0,1.663 0.385,3.095 1.155,4.297c0.77,1.201 1.794,2.264 3.073,3.188c1.278,0.924 2.733,1.771 4.366,2.541c1.632,0.77 3.295,1.548 4.99,2.333c1.694,0.785 3.357,1.648 4.989,2.587c1.633,0.94 3.088,2.049 4.367,3.327c1.278,1.278 2.31,2.787 3.095,4.528c0.786,1.74 1.178,3.796 1.178,6.168Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M886.638,283.389c0,0.247 -0.054,0.454 -0.161,0.624c-0.108,0.169 -0.301,0.316 -0.578,0.439c-0.277,0.123 -0.639,0.215 -1.086,0.277c-0.446,0.062 -0.993,0.092 -1.64,0.092c-0.708,0 -1.286,-0.03 -1.733,-0.092c-0.446,-0.062 -0.8,-0.154 -1.062,-0.277c-0.262,-0.123 -0.439,-0.27 -0.532,-0.439c-0.092,-0.17 -0.138,-0.377 -0.138,-0.624l0,-5.498c-2.372,2.618 -4.713,4.528 -7.023,5.729c-2.31,1.201 -4.651,1.802 -7.023,1.802c-2.772,0 -5.105,-0.462 -6.999,-1.386c-1.895,-0.924 -3.427,-2.179 -4.597,-3.766c-1.171,-1.586 -2.01,-3.434 -2.519,-5.544c-0.508,-2.11 -0.762,-4.674 -0.762,-7.693l0,-25.226c0,-0.246 0.054,-0.454 0.162,-0.624c0.108,-0.169 0.316,-0.323 0.624,-0.462c0.308,-0.138 0.708,-0.231 1.201,-0.277c0.493,-0.046 1.109,-0.069 1.848,-0.069c0.739,0 1.355,0.023 1.848,0.069c0.493,0.046 0.886,0.139 1.178,0.277c0.293,0.139 0.501,0.293 0.624,0.462c0.123,0.17 0.185,0.378 0.185,0.624l0,24.21c0,2.433 0.177,4.382 0.531,5.845c0.354,1.463 0.893,2.71 1.617,3.742c0.724,1.032 1.64,1.833 2.749,2.403c1.109,0.569 2.403,0.854 3.881,0.854c1.91,0 3.812,-0.677 5.706,-2.033c1.895,-1.355 3.904,-3.342 6.03,-5.96l0,-29.061c0,-0.246 0.054,-0.454 0.161,-0.624c0.108,-0.169 0.316,-0.323 0.624,-0.462c0.308,-0.138 0.701,-0.231 1.178,-0.277c0.478,-0.046 1.101,-0.069 1.871,-0.069c0.74,0 1.356,0.023 1.849,0.069c0.492,0.046 0.877,0.139 1.155,0.277c0.277,0.139 0.485,0.293 0.623,0.462c0.139,0.17 0.208,0.378 0.208,0.624l0,41.582Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M938.986,261.951c0,3.635 -0.393,6.9 -1.179,9.795c-0.785,2.895 -1.94,5.352 -3.465,7.369c-1.524,2.018 -3.411,3.573 -5.66,4.667c-2.248,1.093 -4.82,1.64 -7.715,1.64c-1.232,0 -2.372,-0.123 -3.419,-0.37c-1.048,-0.246 -2.072,-0.631 -3.073,-1.155c-1.001,-0.523 -1.994,-1.185 -2.98,-1.986c-0.986,-0.801 -2.033,-1.741 -3.142,-2.819l0,20.791c0,0.247 -0.061,0.462 -0.184,0.647c-0.124,0.185 -0.324,0.339 -0.601,0.462c-0.277,0.123 -0.662,0.216 -1.155,0.277c-0.493,0.062 -1.124,0.093 -1.894,0.093c-0.74,0 -1.356,-0.031 -1.849,-0.093c-0.492,-0.061 -0.885,-0.154 -1.178,-0.277c-0.292,-0.123 -0.493,-0.277 -0.6,-0.462c-0.108,-0.185 -0.162,-0.4 -0.162,-0.647l0,-58.076c0,-0.277 0.046,-0.501 0.139,-0.67c0.092,-0.169 0.277,-0.316 0.554,-0.439c0.277,-0.123 0.631,-0.208 1.063,-0.254c0.431,-0.046 0.954,-0.069 1.571,-0.069c0.646,0 1.178,0.023 1.594,0.069c0.415,0.046 0.762,0.131 1.039,0.254c0.277,0.123 0.47,0.27 0.578,0.439c0.107,0.169 0.161,0.393 0.161,0.67l0,5.59c1.263,-1.293 2.48,-2.417 3.65,-3.372c1.171,-0.955 2.349,-1.748 3.535,-2.38c1.186,-0.631 2.402,-1.109 3.65,-1.432c1.247,-0.323 2.564,-0.485 3.95,-0.485c3.019,0 5.591,0.585 7.716,1.756c2.125,1.17 3.858,2.772 5.198,4.805c1.34,2.033 2.317,4.397 2.933,7.092c0.617,2.695 0.925,5.552 0.925,8.57Zm-7.901,0.878c0,-2.125 -0.163,-4.181 -0.488,-6.168c-0.325,-1.987 -0.883,-3.75 -1.673,-5.29c-0.791,-1.54 -1.852,-2.772 -3.185,-3.696c-1.332,-0.924 -2.99,-1.386 -4.974,-1.386c-0.992,0 -1.968,0.146 -2.929,0.439c-0.96,0.292 -1.936,0.754 -2.928,1.386c-0.992,0.631 -2.03,1.463 -3.115,2.495c-1.085,1.031 -2.231,2.302 -3.44,3.811l0,16.541c2.108,2.556 4.107,4.512 5.997,5.867c1.891,1.356 3.874,2.033 5.95,2.033c1.922,0 3.572,-0.462 4.951,-1.386c1.379,-0.924 2.495,-2.156 3.347,-3.696c0.852,-1.54 1.48,-3.265 1.883,-5.175c0.403,-1.909 0.604,-3.834 0.604,-5.775Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M988.699,261.951c0,3.635 -0.392,6.9 -1.178,9.795c-0.785,2.895 -1.94,5.352 -3.465,7.369c-1.525,2.018 -3.411,3.573 -5.66,4.667c-2.248,1.093 -4.82,1.64 -7.716,1.64c-1.232,0 -2.371,-0.123 -3.419,-0.37c-1.047,-0.246 -2.071,-0.631 -3.072,-1.155c-1.001,-0.523 -1.994,-1.185 -2.98,-1.986c-0.986,-0.801 -2.033,-1.741 -3.142,-2.819l0,20.791c0,0.247 -0.061,0.462 -0.185,0.647c-0.123,0.185 -0.323,0.339 -0.6,0.462c-0.278,0.123 -0.663,0.216 -1.155,0.277c-0.493,0.062 -1.125,0.093 -1.895,0.093c-0.739,0 -1.355,-0.031 -1.848,-0.093c-0.493,-0.061 -0.885,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.277 -0.601,-0.462c-0.107,-0.185 -0.161,-0.4 -0.161,-0.647l0,-58.076c0,-0.277 0.046,-0.501 0.138,-0.67c0.093,-0.169 0.278,-0.316 0.555,-0.439c0.277,-0.123 0.631,-0.208 1.062,-0.254c0.432,-0.046 0.955,-0.069 1.571,-0.069c0.647,0 1.178,0.023 1.594,0.069c0.416,0.046 0.763,0.131 1.04,0.254c0.277,0.123 0.47,0.27 0.577,0.439c0.108,0.169 0.162,0.393 0.162,0.67l0,5.59c1.263,-1.293 2.48,-2.417 3.65,-3.372c1.171,-0.955 2.349,-1.748 3.535,-2.38c1.185,-0.631 2.402,-1.109 3.65,-1.432c1.247,-0.323 2.564,-0.485 3.95,-0.485c3.018,0 5.59,0.585 7.716,1.756c2.125,1.17 3.858,2.772 5.197,4.805c1.34,2.033 2.318,4.397 2.934,7.092c0.616,2.695 0.924,5.552 0.924,8.57Zm-7.9,0.878c0,-2.125 -0.163,-4.181 -0.488,-6.168c-0.326,-1.987 -0.883,-3.75 -1.674,-5.29c-0.79,-1.54 -1.851,-2.772 -3.184,-3.696c-1.333,-0.924 -2.991,-1.386 -4.974,-1.386c-0.992,0 -1.968,0.146 -2.929,0.439c-0.96,0.292 -1.937,0.754 -2.928,1.386c-0.992,0.631 -2.03,1.463 -3.115,2.495c-1.085,1.031 -2.231,2.302 -3.44,3.811l0,16.541c2.108,2.556 4.107,4.512 5.997,5.867c1.891,1.356 3.874,2.033 5.95,2.033c1.921,0 3.571,-0.462 4.951,-1.386c1.379,-0.924 2.494,-2.156 3.347,-3.696c0.852,-1.54 1.48,-3.265 1.882,-5.175c0.403,-1.909 0.605,-3.834 0.605,-5.775Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1038.83,262.136c0,3.388 -0.447,6.507 -1.34,9.356c-0.893,2.849 -2.225,5.306 -3.996,7.369c-1.772,2.064 -3.989,3.673 -6.654,4.828c-2.664,1.156 -5.752,1.733 -9.263,1.733c-3.419,0 -6.399,-0.508 -8.94,-1.525c-2.541,-1.016 -4.659,-2.495 -6.353,-4.435c-1.694,-1.941 -2.957,-4.297 -3.789,-7.069c-0.831,-2.772 -1.247,-5.914 -1.247,-9.425c0,-3.388 0.439,-6.507 1.317,-9.356c0.877,-2.849 2.202,-5.306 3.973,-7.37c1.771,-2.063 3.981,-3.665 6.63,-4.805c2.649,-1.139 5.744,-1.709 9.287,-1.709c3.419,0 6.399,0.508 8.94,1.525c2.541,1.016 4.659,2.494 6.353,4.435c1.694,1.94 2.964,4.297 3.811,7.069c0.847,2.772 1.271,5.898 1.271,9.379Zm-7.901,0.508c0,-2.248 -0.21,-4.374 -0.629,-6.376c-0.42,-2.002 -1.111,-3.757 -2.075,-5.267c-0.963,-1.509 -2.269,-2.703 -3.916,-3.58c-1.647,-0.878 -3.698,-1.317 -6.154,-1.317c-2.269,0 -4.219,0.4 -5.851,1.201c-1.631,0.801 -2.976,1.933 -4.032,3.396c-1.057,1.463 -1.842,3.196 -2.354,5.198c-0.513,2.002 -0.77,4.189 -0.77,6.56c0,2.28 0.21,4.42 0.63,6.423c0.42,2.002 1.119,3.75 2.098,5.244c0.979,1.493 2.292,2.679 3.939,3.557c1.647,0.878 3.698,1.317 6.154,1.317c2.238,0 4.18,-0.401 5.827,-1.201c1.648,-0.801 3,-1.925 4.056,-3.373c1.057,-1.448 1.834,-3.173 2.331,-5.175c0.498,-2.002 0.746,-4.204 0.746,-6.607Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1074.36,244.533c0,0.678 -0.016,1.247 -0.047,1.709c-0.03,0.462 -0.092,0.824 -0.184,1.086c-0.093,0.262 -0.208,0.462 -0.347,0.601c-0.139,0.138 -0.331,0.208 -0.577,0.208c-0.247,0 -0.547,-0.07 -0.901,-0.208c-0.355,-0.139 -0.755,-0.277 -1.202,-0.416c-0.446,-0.139 -0.947,-0.27 -1.501,-0.393c-0.555,-0.123 -1.155,-0.185 -1.802,-0.185c-0.77,0 -1.525,0.154 -2.264,0.462c-0.739,0.308 -1.517,0.817 -2.333,1.525c-0.817,0.709 -1.671,1.648 -2.565,2.818c-0.893,1.171 -1.878,2.603 -2.956,4.297l0,27.352c0,0.247 -0.062,0.454 -0.185,0.624c-0.124,0.169 -0.324,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.493,0.062 -1.124,0.092 -1.894,0.092c-0.74,0 -1.356,-0.03 -1.848,-0.092c-0.493,-0.062 -0.886,-0.154 -1.179,-0.277c-0.292,-0.123 -0.492,-0.27 -0.6,-0.439c-0.108,-0.17 -0.162,-0.377 -0.162,-0.624l0,-41.582c0,-0.246 0.046,-0.454 0.139,-0.624c0.092,-0.169 0.277,-0.323 0.554,-0.462c0.277,-0.138 0.632,-0.231 1.063,-0.277c0.431,-0.046 1.001,-0.069 1.709,-0.069c0.678,0 1.24,0.023 1.687,0.069c0.446,0.046 0.793,0.139 1.039,0.277c0.247,0.139 0.424,0.293 0.532,0.462c0.107,0.17 0.161,0.378 0.161,0.624l0,6.052c1.14,-1.663 2.21,-3.018 3.211,-4.065c1.001,-1.048 1.949,-1.872 2.842,-2.472c0.893,-0.601 1.779,-1.017 2.656,-1.248c0.878,-0.231 1.764,-0.346 2.657,-0.346c0.4,0 0.855,0.023 1.363,0.069c0.508,0.046 1.04,0.131 1.594,0.254c0.554,0.123 1.055,0.262 1.502,0.416c0.446,0.154 0.762,0.308 0.947,0.462c0.185,0.154 0.308,0.3 0.369,0.439c0.062,0.139 0.116,0.316 0.162,0.531c0.046,0.216 0.077,0.532 0.092,0.948c0.016,0.415 0.024,0.977 0.024,1.686Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1104.67,280.34c0,0.893 -0.061,1.601 -0.184,2.125c-0.124,0.524 -0.308,0.909 -0.555,1.155c-0.246,0.247 -0.616,0.478 -1.109,0.693c-0.493,0.216 -1.055,0.393 -1.686,0.532c-0.632,0.138 -1.302,0.254 -2.01,0.346c-0.708,0.092 -1.417,0.139 -2.125,0.139c-2.156,0 -4.004,-0.285 -5.545,-0.855c-1.54,-0.57 -2.802,-1.432 -3.788,-2.587c-0.986,-1.155 -1.702,-2.619 -2.149,-4.39c-0.446,-1.771 -0.669,-3.858 -0.669,-6.26l0,-24.303l-5.822,0c-0.462,0 -0.832,-0.246 -1.109,-0.739c-0.277,-0.493 -0.416,-1.293 -0.416,-2.402c0,-0.586 0.039,-1.078 0.116,-1.479c0.077,-0.4 0.177,-0.731 0.3,-0.993c0.123,-0.262 0.285,-0.447 0.485,-0.555c0.2,-0.107 0.424,-0.161 0.67,-0.161l5.776,0l0,-9.888c0,-0.215 0.053,-0.415 0.161,-0.6c0.108,-0.185 0.308,-0.347 0.601,-0.485c0.292,-0.139 0.685,-0.239 1.178,-0.301c0.493,-0.061 1.109,-0.092 1.848,-0.092c0.77,0 1.402,0.031 1.894,0.092c0.493,0.062 0.878,0.162 1.155,0.301c0.278,0.138 0.478,0.3 0.601,0.485c0.123,0.185 0.185,0.385 0.185,0.6l0,9.888l10.673,0c0.246,0 0.462,0.054 0.646,0.161c0.185,0.108 0.347,0.293 0.486,0.555c0.138,0.262 0.238,0.593 0.3,0.993c0.062,0.401 0.092,0.893 0.092,1.479c0,1.109 -0.138,1.909 -0.415,2.402c-0.278,0.493 -0.647,0.739 -1.109,0.739l-10.673,0l0,23.194c0,2.865 0.423,5.028 1.27,6.491c0.848,1.464 2.364,2.195 4.551,2.195c0.709,0 1.34,-0.069 1.895,-0.208c0.554,-0.138 1.047,-0.285 1.478,-0.439c0.431,-0.154 0.801,-0.3 1.109,-0.439c0.308,-0.138 0.585,-0.208 0.832,-0.208c0.154,0 0.3,0.039 0.439,0.116c0.138,0.077 0.246,0.223 0.323,0.439c0.077,0.215 0.146,0.508 0.208,0.878c0.062,0.369 0.092,0.831 0.092,1.386Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1149.21,260.796c0,1.201 -0.301,2.056 -0.904,2.564c-0.604,0.509 -1.292,0.763 -2.066,0.763l-27.385,0c0,2.31 0.233,4.389 0.697,6.237c0.464,1.848 1.238,3.434 2.321,4.759c1.083,1.324 2.492,2.341 4.225,3.049c1.733,0.709 3.854,1.063 6.36,1.063c1.981,0 3.746,-0.162 5.293,-0.485c1.548,-0.324 2.886,-0.686 4.016,-1.086c1.13,-0.4 2.059,-0.762 2.786,-1.086c0.727,-0.323 1.277,-0.485 1.649,-0.485c0.216,0 0.409,0.054 0.58,0.162c0.17,0.108 0.301,0.269 0.394,0.485c0.093,0.216 0.163,0.516 0.209,0.901c0.047,0.385 0.07,0.855 0.07,1.409c0,0.401 -0.016,0.747 -0.046,1.04c-0.031,0.292 -0.07,0.554 -0.116,0.785c-0.046,0.231 -0.123,0.439 -0.231,0.624c-0.108,0.185 -0.246,0.362 -0.416,0.531c-0.169,0.17 -0.67,0.447 -1.501,0.832c-0.832,0.385 -1.91,0.762 -3.235,1.132c-1.324,0.369 -2.856,0.701 -4.597,0.993c-1.74,0.293 -3.596,0.439 -5.567,0.439c-3.419,0 -6.414,-0.477 -8.986,-1.432c-2.572,-0.955 -4.736,-2.372 -6.492,-4.251c-1.756,-1.879 -3.08,-4.235 -3.973,-7.069c-0.894,-2.834 -1.34,-6.129 -1.34,-9.887c0,-3.573 0.462,-6.784 1.386,-9.633c0.924,-2.849 2.256,-5.267 3.996,-7.254c1.741,-1.987 3.843,-3.511 6.307,-4.574c2.464,-1.063 5.221,-1.594 8.27,-1.594c3.265,0 6.045,0.524 8.34,1.571c2.295,1.047 4.181,2.456 5.66,4.227c1.478,1.771 2.564,3.85 3.257,6.238c0.693,2.387 1.039,4.936 1.039,7.646l0,1.386Zm-7.669,-2.264c0.092,-4.004 -0.799,-7.146 -2.673,-9.425c-1.875,-2.279 -4.656,-3.419 -8.344,-3.419c-1.891,0 -3.549,0.354 -4.974,1.063c-1.426,0.708 -2.619,1.648 -3.58,2.818c-0.961,1.17 -1.705,2.533 -2.231,4.089c-0.527,1.555 -0.821,3.18 -0.884,4.874l22.686,0Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M1196.42,283.389c0,0.247 -0.054,0.462 -0.161,0.647c-0.108,0.185 -0.293,0.331 -0.555,0.439c-0.262,0.108 -0.608,0.192 -1.039,0.254c-0.432,0.062 -0.955,0.092 -1.571,0.092c-0.647,0 -1.186,-0.03 -1.617,-0.092c-0.432,-0.062 -0.786,-0.146 -1.063,-0.254c-0.277,-0.108 -0.477,-0.254 -0.601,-0.439c-0.123,-0.185 -0.184,-0.4 -0.184,-0.647l0,-5.498c-2.187,2.372 -4.459,4.22 -6.815,5.544c-2.357,1.325 -4.936,1.987 -7.739,1.987c-3.05,0 -5.652,-0.593 -7.808,-1.779c-2.157,-1.186 -3.905,-2.787 -5.244,-4.805c-1.34,-2.017 -2.318,-4.389 -2.934,-7.115c-0.616,-2.726 -0.924,-5.598 -0.924,-8.617c0,-3.573 0.385,-6.799 1.155,-9.679c0.77,-2.88 1.909,-5.336 3.419,-7.369c1.509,-2.033 3.38,-3.596 5.613,-4.69c2.233,-1.093 4.813,-1.64 7.739,-1.64c2.434,0 4.659,0.531 6.676,1.594c2.018,1.063 4.012,2.626 5.984,4.689l0,-24.163c0,-0.216 0.054,-0.424 0.161,-0.624c0.108,-0.2 0.316,-0.354 0.624,-0.462c0.308,-0.108 0.701,-0.2 1.178,-0.277c0.478,-0.077 1.086,-0.116 1.825,-0.116c0.77,0 1.402,0.039 1.895,0.116c0.492,0.077 0.877,0.169 1.155,0.277c0.277,0.108 0.485,0.262 0.623,0.462c0.139,0.2 0.208,0.408 0.208,0.624l0,61.541Zm-7.669,-29.246c-2.064,-2.557 -4.058,-4.505 -5.984,-5.845c-1.925,-1.339 -3.934,-2.009 -6.029,-2.009c-1.94,0 -3.588,0.462 -4.944,1.386c-1.355,0.924 -2.456,2.14 -3.303,3.65c-0.847,1.509 -1.463,3.218 -1.848,5.128c-0.385,1.91 -0.578,3.85 -0.578,5.822c0,2.094 0.162,4.142 0.485,6.145c0.324,2.002 0.886,3.78 1.687,5.336c0.801,1.555 1.863,2.803 3.188,3.742c1.324,0.94 2.988,1.41 4.99,1.41c1.016,0 1.994,-0.139 2.934,-0.416c0.939,-0.278 1.902,-0.74 2.887,-1.386c0.986,-0.647 2.018,-1.487 3.096,-2.518c1.078,-1.032 2.217,-2.303 3.419,-3.812l0,-16.633Z" style="fill:#fff;fill-rule:nonzero;"/></g></svg> diff --git a/docs/public/badge-community-light.svg b/docs/public/badge-community-light.svg index de4e0cf149..08c49f05b5 100644 --- a/docs/public/badge-community-light.svg +++ b/docs/public/badge-community-light.svg @@ -1 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg width="100%" height="100%" viewBox="0 0 1260 371" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;"><rect id="badge.-community.-light" x="0" y="0.321" width="1260" height="370" style="fill:none;"/><clipPath id="_clip1"><rect x="0" y="0.321" width="1260" height="370"/></clipPath><g clip-path="url(#_clip1)"><path d="M1260,33.621c0,-18.379 -14.921,-33.3 -33.3,-33.3l-1193.4,0c-18.379,0 -33.3,14.921 -33.3,33.3l0,303.4c0,18.378 14.921,33.3 33.3,33.3l1193.4,0c18.379,0 33.3,-14.922 33.3,-33.3l0,-303.4Z" style="fill:#fff;"/><path d="M426.392,189.328c0,1.077 -0.059,1.978 -0.176,2.704c-0.117,0.726 -0.293,1.288 -0.527,1.686c-0.234,0.398 -0.491,0.668 -0.772,0.808c-0.281,0.141 -0.563,0.211 -0.844,0.211c-0.936,0 -2.447,-0.386 -4.531,-1.159c-2.084,-0.773 -4.484,-1.897 -7.201,-3.372c-2.716,-1.476 -5.62,-3.267 -8.711,-5.375c-3.092,-2.107 -6.089,-4.566 -8.993,-7.376c-2.295,1.405 -5.199,2.622 -8.711,3.653c-3.513,1.03 -7.588,1.545 -12.224,1.545c-6.839,0 -12.752,-1.007 -17.74,-3.021c-4.988,-2.013 -9.109,-4.964 -12.364,-8.851c-3.255,-3.888 -5.679,-8.724 -7.272,-14.508c-1.592,-5.784 -2.388,-12.423 -2.388,-19.917c0,-7.213 0.866,-13.734 2.599,-19.566c1.733,-5.831 4.333,-10.795 7.798,-14.893c3.466,-4.098 7.799,-7.26 12.997,-9.485c5.199,-2.224 11.264,-3.337 18.196,-3.337c6.51,0 12.236,1.007 17.177,3.021c4.941,2.014 9.086,4.953 12.435,8.817c3.349,3.864 5.866,8.63 7.552,14.297c1.686,5.667 2.529,12.177 2.529,19.53c0,3.794 -0.222,7.424 -0.667,10.89c-0.445,3.466 -1.147,6.744 -2.108,9.835c-0.96,3.091 -2.166,5.948 -3.618,8.571c-1.452,2.623 -3.161,4.988 -5.128,7.096c3.419,2.81 6.416,5 8.992,6.569c2.576,1.569 4.707,2.751 6.393,3.547c1.687,0.797 2.998,1.37 3.935,1.722c0.936,0.351 1.639,0.749 2.107,1.194c0.469,0.445 0.796,1.077 0.984,1.897c0.187,0.819 0.281,1.908 0.281,3.267Zm-23.886,-53.745c0,-5.152 -0.457,-9.929 -1.37,-14.331c-0.914,-4.403 -2.436,-8.232 -4.567,-11.487c-2.131,-3.255 -4.976,-5.796 -8.536,-7.622c-3.559,-1.827 -7.962,-2.74 -13.207,-2.74c-5.246,0 -9.649,0.972 -13.208,2.915c-3.56,1.944 -6.452,4.567 -8.676,7.869c-2.225,3.302 -3.818,7.13 -4.778,11.486c-0.96,4.356 -1.44,8.969 -1.44,13.84c0,5.339 0.445,10.245 1.335,14.718c0.89,4.473 2.389,8.349 4.496,11.627c2.108,3.279 4.93,5.82 8.466,7.623c3.536,1.803 7.974,2.705 13.313,2.705c5.292,0 9.742,-0.984 13.348,-2.951c3.606,-1.967 6.51,-4.625 8.711,-7.974c2.202,-3.349 3.771,-7.236 4.707,-11.662c0.937,-4.426 1.406,-9.098 1.406,-14.016Z" style="fill:#333;fill-rule:nonzero;"/><path d="M534.723,179.492c0,0.375 -0.096,0.703 -0.289,0.984c-0.193,0.281 -0.531,0.503 -1.013,0.667c-0.483,0.164 -1.098,0.304 -1.846,0.421c-0.747,0.118 -1.724,0.176 -2.93,0.176c-1.109,0 -2.062,-0.058 -2.858,-0.176c-0.796,-0.117 -1.423,-0.257 -1.881,-0.421c-0.459,-0.164 -0.784,-0.386 -0.977,-0.667c-0.193,-0.281 -0.289,-0.609 -0.289,-0.984l0,-79.176l-0.141,0l-32.036,79.527c-0.14,0.328 -0.339,0.609 -0.597,0.843c-0.257,0.234 -0.632,0.434 -1.124,0.597c-0.492,0.164 -1.077,0.281 -1.756,0.352c-0.679,0.07 -1.487,0.105 -2.424,0.105c-0.984,0 -1.827,-0.047 -2.529,-0.14c-0.703,-0.094 -1.288,-0.223 -1.756,-0.387c-0.469,-0.164 -0.832,-0.363 -1.089,-0.597c-0.258,-0.234 -0.434,-0.492 -0.527,-0.773l-30.631,-79.527l-0.07,0l0,79.176c0,0.375 -0.097,0.703 -0.289,0.984c-0.193,0.281 -0.531,0.503 -1.014,0.667c-0.482,0.164 -1.109,0.304 -1.881,0.421c-0.772,0.118 -1.761,0.176 -2.967,0.176c-1.157,0 -2.122,-0.058 -2.894,-0.176c-0.772,-0.117 -1.387,-0.257 -1.845,-0.421c-0.459,-0.164 -0.772,-0.386 -0.941,-0.667c-0.169,-0.281 -0.253,-0.609 -0.253,-0.984l0,-83.602c0,-1.967 0.523,-3.372 1.569,-4.215c1.046,-0.843 2.212,-1.265 3.496,-1.265l7.419,0c1.522,0 2.853,0.141 3.995,0.422c1.142,0.281 2.14,0.726 2.996,1.335c0.856,0.608 1.569,1.381 2.14,2.318c0.571,0.937 1.07,2.037 1.499,3.302l25.994,65.828l0.351,0l27.047,-65.617c0.524,-1.405 1.095,-2.6 1.713,-3.583c0.619,-0.984 1.297,-1.768 2.035,-2.354c0.738,-0.585 1.558,-1.007 2.462,-1.264c0.904,-0.258 1.951,-0.387 3.141,-0.387l7.779,0c0.715,0 1.393,0.106 2.035,0.316c0.642,0.211 1.189,0.539 1.642,0.984c0.452,0.445 0.821,1.007 1.106,1.686c0.285,0.679 0.428,1.51 0.428,2.494l0,83.602Z" style="fill:#333;fill-rule:nonzero;"/><path d="M618.185,179.351c0,0.375 -0.082,0.715 -0.246,1.019c-0.164,0.305 -0.48,0.55 -0.949,0.738c-0.468,0.187 -1.1,0.339 -1.896,0.456c-0.797,0.118 -1.827,0.176 -3.092,0.176c-1.639,0 -2.974,-0.07 -4.004,-0.211c-1.031,-0.14 -1.803,-0.398 -2.318,-0.772c-0.516,-0.375 -0.937,-0.797 -1.265,-1.265l-33.441,-45.454l0,45.454c0,0.328 -0.094,0.644 -0.281,0.948c-0.187,0.305 -0.515,0.539 -0.983,0.703c-0.469,0.164 -1.089,0.304 -1.862,0.421c-0.773,0.118 -1.745,0.176 -2.916,0.176c-1.124,0 -2.084,-0.058 -2.88,-0.176c-0.796,-0.117 -1.429,-0.257 -1.897,-0.421c-0.468,-0.164 -0.796,-0.398 -0.983,-0.703c-0.188,-0.304 -0.282,-0.62 -0.282,-0.948l0,-87.255c0,-0.375 0.094,-0.703 0.282,-0.984c0.187,-0.281 0.515,-0.503 0.983,-0.667c0.468,-0.164 1.101,-0.305 1.897,-0.422c0.796,-0.117 1.756,-0.175 2.88,-0.175c1.171,0 2.143,0.058 2.916,0.175c0.773,0.117 1.393,0.258 1.862,0.422c0.468,0.164 0.796,0.386 0.983,0.667c0.187,0.281 0.281,0.609 0.281,0.984l0,40.396l32.176,-40.396c0.281,-0.422 0.609,-0.773 0.984,-1.054c0.375,-0.281 0.831,-0.504 1.37,-0.667c0.538,-0.164 1.194,-0.293 1.967,-0.387c0.773,-0.094 1.768,-0.14 2.986,-0.14c1.218,0 2.201,0.058 2.95,0.175c0.75,0.117 1.347,0.27 1.792,0.457c0.445,0.187 0.749,0.421 0.913,0.702c0.164,0.282 0.246,0.586 0.246,0.914c0,0.609 -0.152,1.218 -0.457,1.826c-0.304,0.609 -0.878,1.452 -1.721,2.53l-30.139,36.04l32.458,43.136c0.796,1.217 1.276,2.049 1.44,2.494c0.164,0.444 0.246,0.807 0.246,1.088Z" style="fill:#333;fill-rule:nonzero;"/><path d="M713.941,95.609c0,0.89 -0.047,1.663 -0.141,2.318c-0.094,0.656 -0.258,1.183 -0.492,1.581c-0.234,0.398 -0.503,0.691 -0.808,0.878c-0.304,0.188 -0.62,0.281 -0.948,0.281l-33.3,0l0,30.912l31.473,0c0.328,0 0.644,0.082 0.949,0.246c0.304,0.164 0.574,0.433 0.808,0.808c0.234,0.374 0.398,0.878 0.491,1.51c0.094,0.632 0.141,1.44 0.141,2.424c0,0.89 -0.047,1.651 -0.141,2.283c-0.093,0.632 -0.257,1.148 -0.491,1.546c-0.234,0.398 -0.504,0.702 -0.808,0.913c-0.305,0.211 -0.621,0.316 -0.949,0.316l-31.473,0l0,37.867c0,0.328 -0.094,0.644 -0.281,0.948c-0.188,0.305 -0.516,0.539 -0.984,0.703c-0.468,0.164 -1.077,0.304 -1.826,0.421c-0.75,0.118 -1.733,0.176 -2.951,0.176c-1.124,0 -2.084,-0.058 -2.881,-0.176c-0.796,-0.117 -1.428,-0.257 -1.896,-0.421c-0.469,-0.164 -0.797,-0.398 -0.984,-0.703c-0.187,-0.304 -0.281,-0.62 -0.281,-0.948l0,-84.164c0,-1.827 0.48,-3.103 1.44,-3.829c0.96,-0.726 1.979,-1.089 3.056,-1.089l40.888,0c0.328,0 0.644,0.094 0.948,0.281c0.305,0.188 0.574,0.492 0.808,0.914c0.234,0.421 0.398,0.971 0.492,1.65c0.094,0.68 0.141,1.464 0.141,2.354Z" style="fill:#333;fill-rule:nonzero;"/><path d="M742.534,179.562c0,0.375 -0.094,0.691 -0.281,0.949c-0.187,0.257 -0.492,0.48 -0.913,0.667c-0.422,0.187 -1.007,0.328 -1.757,0.422c-0.749,0.093 -1.709,0.14 -2.88,0.14c-1.124,0 -2.061,-0.047 -2.81,-0.14c-0.75,-0.094 -1.347,-0.235 -1.792,-0.422c-0.445,-0.187 -0.749,-0.41 -0.913,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-63.228c0,-0.328 0.082,-0.632 0.246,-0.913c0.164,-0.281 0.468,-0.516 0.913,-0.703c0.445,-0.187 1.042,-0.328 1.792,-0.422c0.749,-0.093 1.686,-0.14 2.81,-0.14c1.171,0 2.131,0.047 2.88,0.14c0.75,0.094 1.335,0.235 1.757,0.422c0.421,0.187 0.726,0.422 0.913,0.703c0.187,0.281 0.281,0.585 0.281,0.913l0,63.228Zm1.335,-84.585c0,2.716 -0.515,4.566 -1.546,5.55c-1.03,0.983 -2.927,1.475 -5.69,1.475c-2.717,0 -4.579,-0.48 -5.586,-1.44c-1.007,-0.96 -1.51,-2.775 -1.51,-5.445c0,-2.716 0.515,-4.566 1.546,-5.55c1.03,-0.983 2.927,-1.475 5.69,-1.475c2.717,0 4.578,0.48 5.585,1.44c1.007,0.96 1.511,2.775 1.511,5.445Z" style="fill:#333;fill-rule:nonzero;"/><path d="M800.915,120.479c0,1.03 -0.024,1.897 -0.07,2.599c-0.047,0.703 -0.141,1.253 -0.281,1.651c-0.141,0.398 -0.317,0.703 -0.527,0.913c-0.211,0.211 -0.504,0.317 -0.879,0.317c-0.374,0 -0.831,-0.106 -1.37,-0.317c-0.538,-0.21 -1.147,-0.421 -1.826,-0.632c-0.679,-0.211 -1.44,-0.41 -2.283,-0.597c-0.843,-0.187 -1.757,-0.281 -2.74,-0.281c-1.171,0 -2.319,0.234 -3.443,0.703c-1.124,0.468 -2.306,1.241 -3.548,2.318c-1.241,1.077 -2.54,2.506 -3.899,4.285c-1.358,1.78 -2.857,3.958 -4.496,6.534l0,41.59c0,0.375 -0.094,0.691 -0.281,0.949c-0.187,0.257 -0.492,0.48 -0.913,0.667c-0.422,0.187 -1.007,0.328 -1.756,0.422c-0.75,0.093 -1.71,0.14 -2.881,0.14c-1.124,0 -2.061,-0.047 -2.81,-0.14c-0.749,-0.094 -1.347,-0.235 -1.792,-0.422c-0.444,-0.187 -0.749,-0.41 -0.913,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-63.228c0,-0.375 0.071,-0.691 0.211,-0.949c0.141,-0.257 0.422,-0.491 0.843,-0.702c0.422,-0.211 0.96,-0.351 1.616,-0.422c0.656,-0.07 1.522,-0.105 2.599,-0.105c1.031,0 1.885,0.035 2.565,0.105c0.679,0.071 1.206,0.211 1.58,0.422c0.375,0.211 0.644,0.445 0.808,0.702c0.164,0.258 0.246,0.574 0.246,0.949l0,9.203c1.733,-2.529 3.361,-4.59 4.883,-6.182c1.522,-1.593 2.962,-2.846 4.32,-3.759c1.359,-0.913 2.705,-1.545 4.04,-1.897c1.335,-0.351 2.681,-0.527 4.04,-0.527c0.608,0 1.299,0.036 2.072,0.106c0.773,0.07 1.581,0.199 2.424,0.386c0.843,0.188 1.604,0.398 2.283,0.632c0.679,0.235 1.159,0.469 1.44,0.703c0.281,0.234 0.469,0.457 0.562,0.667c0.094,0.211 0.176,0.48 0.246,0.808c0.07,0.328 0.117,0.808 0.141,1.441c0.023,0.632 0.035,1.487 0.035,2.564Z" style="fill:#333;fill-rule:nonzero;"/><path d="M907.911,179.562c0,0.375 -0.093,0.691 -0.281,0.949c-0.187,0.257 -0.491,0.48 -0.913,0.667c-0.422,0.187 -1.007,0.328 -1.756,0.422c-0.75,0.093 -1.686,0.14 -2.811,0.14c-1.17,0 -2.131,-0.047 -2.88,-0.14c-0.749,-0.094 -1.346,-0.235 -1.791,-0.422c-0.445,-0.187 -0.761,-0.41 -0.949,-0.667c-0.187,-0.258 -0.281,-0.574 -0.281,-0.949l0,-38.429c0,-2.669 -0.234,-5.105 -0.702,-7.306c-0.469,-2.201 -1.218,-4.098 -2.248,-5.691c-1.031,-1.592 -2.342,-2.81 -3.935,-3.653c-1.592,-0.843 -3.466,-1.264 -5.62,-1.264c-2.67,0 -5.351,1.03 -8.044,3.091c-2.693,2.061 -5.655,5.082 -8.887,9.063l0,44.189c0,0.375 -0.094,0.691 -0.281,0.949c-0.188,0.257 -0.504,0.48 -0.949,0.667c-0.445,0.187 -1.042,0.328 -1.791,0.422c-0.749,0.093 -1.686,0.14 -2.81,0.14c-1.077,0 -2.002,-0.047 -2.775,-0.14c-0.773,-0.094 -1.382,-0.235 -1.827,-0.422c-0.445,-0.187 -0.749,-0.41 -0.913,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-38.429c0,-2.669 -0.258,-5.105 -0.773,-7.306c-0.515,-2.201 -1.288,-4.098 -2.318,-5.691c-1.031,-1.592 -2.33,-2.81 -3.899,-3.653c-1.569,-0.843 -3.431,-1.264 -5.585,-1.264c-2.67,0 -5.363,1.03 -8.08,3.091c-2.716,2.061 -5.667,5.082 -8.852,9.063l0,44.189c0,0.375 -0.093,0.691 -0.281,0.949c-0.187,0.257 -0.491,0.48 -0.913,0.667c-0.421,0.187 -1.007,0.328 -1.756,0.422c-0.75,0.093 -1.71,0.14 -2.881,0.14c-1.124,0 -2.06,-0.047 -2.81,-0.14c-0.749,-0.094 -1.346,-0.235 -1.791,-0.422c-0.445,-0.187 -0.75,-0.41 -0.914,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-63.228c0,-0.375 0.071,-0.691 0.211,-0.949c0.141,-0.257 0.422,-0.491 0.843,-0.702c0.422,-0.211 0.96,-0.351 1.616,-0.422c0.656,-0.07 1.522,-0.105 2.6,-0.105c1.03,0 1.885,0.035 2.564,0.105c0.679,0.071 1.206,0.211 1.581,0.422c0.374,0.211 0.643,0.445 0.807,0.702c0.164,0.258 0.246,0.574 0.246,0.949l0,8.36c3.56,-3.981 7.014,-6.897 10.363,-8.747c3.349,-1.85 6.732,-2.775 10.151,-2.775c2.623,0 4.977,0.305 7.061,0.914c2.084,0.609 3.922,1.463 5.515,2.564c1.592,1.101 2.951,2.412 4.075,3.934c1.124,1.522 2.06,3.22 2.81,5.094c2.107,-2.295 4.11,-4.239 6.006,-5.831c1.897,-1.593 3.724,-2.881 5.48,-3.864c1.757,-0.984 3.466,-1.698 5.129,-2.143c1.662,-0.445 3.337,-0.668 5.023,-0.668c4.075,0 7.494,0.715 10.257,2.143c2.763,1.429 5,3.337 6.709,5.726c1.71,2.388 2.927,5.187 3.653,8.395c0.726,3.208 1.089,6.592 1.089,10.152l0,39.974Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1016.52,116.193c0,0.328 -0.047,0.726 -0.141,1.195c-0.094,0.468 -0.257,1.053 -0.492,1.756l-18.617,60.067c-0.14,0.515 -0.363,0.937 -0.667,1.265c-0.305,0.327 -0.726,0.585 -1.265,0.772c-0.538,0.188 -1.276,0.316 -2.213,0.387c-0.937,0.07 -2.107,0.105 -3.513,0.105c-1.451,0 -2.669,-0.047 -3.653,-0.14c-0.983,-0.094 -1.768,-0.235 -2.353,-0.422c-0.586,-0.187 -1.019,-0.445 -1.3,-0.773c-0.281,-0.328 -0.492,-0.726 -0.632,-1.194l-13.278,-45.876l-0.141,-0.632l-0.14,0.632l-12.295,45.876c-0.14,0.515 -0.363,0.937 -0.667,1.265c-0.304,0.327 -0.761,0.585 -1.37,0.772c-0.609,0.188 -1.393,0.316 -2.353,0.387c-0.961,0.07 -2.143,0.105 -3.548,0.105c-1.452,0 -2.635,-0.047 -3.548,-0.14c-0.913,-0.094 -1.663,-0.235 -2.248,-0.422c-0.586,-0.187 -1.019,-0.445 -1.3,-0.773c-0.281,-0.328 -0.492,-0.726 -0.632,-1.194l-18.477,-60.067c-0.234,-0.703 -0.398,-1.288 -0.492,-1.756c-0.093,-0.469 -0.14,-0.867 -0.14,-1.195c0,-0.421 0.093,-0.761 0.281,-1.018c0.187,-0.258 0.503,-0.469 0.948,-0.633c0.445,-0.164 1.042,-0.269 1.792,-0.316c0.749,-0.047 1.662,-0.07 2.74,-0.07c1.311,0 2.365,0.035 3.161,0.105c0.796,0.071 1.405,0.188 1.827,0.352c0.421,0.164 0.726,0.398 0.913,0.702c0.187,0.305 0.351,0.668 0.492,1.089l15.245,52.128l0.14,0.633l0.141,-0.633l13.98,-52.128c0.094,-0.421 0.246,-0.784 0.457,-1.089c0.211,-0.304 0.527,-0.538 0.948,-0.702c0.422,-0.164 0.996,-0.281 1.722,-0.352c0.726,-0.07 1.674,-0.105 2.845,-0.105c1.124,0 2.049,0.035 2.775,0.105c0.726,0.071 1.3,0.188 1.721,0.352c0.422,0.164 0.726,0.386 0.913,0.667c0.188,0.281 0.328,0.609 0.422,0.984l15.104,52.268l0.141,0.633l0.07,-0.633l15.035,-52.128c0.093,-0.421 0.245,-0.784 0.456,-1.089c0.211,-0.304 0.539,-0.538 0.984,-0.702c0.445,-0.164 1.054,-0.281 1.826,-0.352c0.773,-0.07 1.768,-0.105 2.986,-0.105c1.124,0 2.026,0.023 2.705,0.07c0.679,0.047 1.218,0.164 1.616,0.351c0.398,0.188 0.679,0.399 0.843,0.633c0.164,0.234 0.246,0.562 0.246,0.983Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1076.94,179.632c0,0.563 -0.187,0.984 -0.562,1.265c-0.375,0.281 -0.89,0.492 -1.546,0.632c-0.655,0.141 -1.616,0.211 -2.88,0.211c-1.218,0 -2.19,-0.07 -2.916,-0.211c-0.726,-0.14 -1.252,-0.351 -1.58,-0.632c-0.328,-0.281 -0.492,-0.702 -0.492,-1.265l0,-6.322c-2.763,2.95 -5.843,5.245 -9.238,6.885c-3.396,1.639 -6.991,2.458 -10.784,2.458c-3.326,0 -6.335,-0.433 -9.028,-1.299c-2.693,-0.867 -4.988,-2.12 -6.885,-3.759c-1.897,-1.639 -3.372,-3.653 -4.426,-6.042c-1.054,-2.388 -1.581,-5.105 -1.581,-8.149c0,-3.56 0.726,-6.651 2.178,-9.274c1.452,-2.622 3.536,-4.8 6.253,-6.533c2.716,-1.733 6.042,-3.033 9.976,-3.899c3.934,-0.867 8.36,-1.3 13.278,-1.3l8.711,0l0,-4.918c0,-2.435 -0.257,-4.59 -0.772,-6.463c-0.516,-1.874 -1.347,-3.431 -2.495,-4.672c-1.147,-1.241 -2.634,-2.178 -4.461,-2.81c-1.826,-0.632 -4.074,-0.949 -6.744,-0.949c-2.857,0 -5.421,0.34 -7.693,1.019c-2.271,0.679 -4.262,1.429 -5.971,2.248c-1.71,0.82 -3.138,1.569 -4.286,2.248c-1.147,0.679 -2.002,1.019 -2.564,1.019c-0.375,0 -0.703,-0.094 -0.984,-0.281c-0.281,-0.187 -0.527,-0.468 -0.737,-0.843c-0.211,-0.375 -0.363,-0.855 -0.457,-1.44c-0.094,-0.586 -0.14,-1.23 -0.14,-1.932c0,-1.171 0.081,-2.096 0.245,-2.775c0.164,-0.679 0.562,-1.323 1.195,-1.932c0.632,-0.609 1.721,-1.323 3.267,-2.143c1.545,-0.82 3.325,-1.569 5.339,-2.248c2.014,-0.679 4.215,-1.241 6.604,-1.686c2.388,-0.445 4.8,-0.668 7.236,-0.668c4.543,0 8.407,0.516 11.592,1.546c3.185,1.03 5.761,2.541 7.728,4.531c1.967,1.991 3.395,4.461 4.285,7.412c0.89,2.951 1.335,6.393 1.335,10.327l0,42.644Zm-11.522,-28.874l-9.905,0c-3.185,0 -5.949,0.269 -8.29,0.808c-2.342,0.539 -4.286,1.335 -5.832,2.389c-1.545,1.054 -2.681,2.318 -3.407,3.793c-0.726,1.476 -1.089,3.174 -1.089,5.094c0,3.278 1.042,5.889 3.127,7.833c2.084,1.944 4.999,2.916 8.746,2.916c3.044,0 5.866,-0.773 8.466,-2.319c2.599,-1.545 5.327,-3.91 8.184,-7.095l0,-13.419Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1135.18,120.479c0,1.03 -0.023,1.897 -0.07,2.599c-0.047,0.703 -0.14,1.253 -0.281,1.651c-0.14,0.398 -0.316,0.703 -0.527,0.913c-0.211,0.211 -0.503,0.317 -0.878,0.317c-0.375,0 -0.831,-0.106 -1.37,-0.317c-0.539,-0.21 -1.147,-0.421 -1.827,-0.632c-0.679,-0.211 -1.44,-0.41 -2.283,-0.597c-0.843,-0.187 -1.756,-0.281 -2.74,-0.281c-1.171,0 -2.318,0.234 -3.442,0.703c-1.124,0.468 -2.307,1.241 -3.548,2.318c-1.241,1.077 -2.541,2.506 -3.899,4.285c-1.358,1.78 -2.857,3.958 -4.496,6.534l0,41.59c0,0.375 -0.094,0.691 -0.281,0.949c-0.188,0.257 -0.492,0.48 -0.914,0.667c-0.421,0.187 -1.007,0.328 -1.756,0.422c-0.749,0.093 -1.709,0.14 -2.88,0.14c-1.124,0 -2.061,-0.047 -2.811,-0.14c-0.749,-0.094 -1.346,-0.235 -1.791,-0.422c-0.445,-0.187 -0.749,-0.41 -0.913,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-63.228c0,-0.375 0.07,-0.691 0.211,-0.949c0.14,-0.257 0.421,-0.491 0.843,-0.702c0.421,-0.211 0.96,-0.351 1.615,-0.422c0.656,-0.07 1.523,-0.105 2.6,-0.105c1.03,0 1.885,0.035 2.564,0.105c0.679,0.071 1.206,0.211 1.581,0.422c0.375,0.211 0.644,0.445 0.808,0.702c0.164,0.258 0.246,0.574 0.246,0.949l0,9.203c1.733,-2.529 3.36,-4.59 4.882,-6.182c1.522,-1.593 2.963,-2.846 4.321,-3.759c1.358,-0.913 2.705,-1.545 4.039,-1.897c1.335,-0.351 2.682,-0.527 4.04,-0.527c0.609,0 1.3,0.036 2.073,0.106c0.772,0.07 1.58,0.199 2.423,0.386c0.843,0.188 1.604,0.398 2.284,0.632c0.679,0.235 1.159,0.469 1.44,0.703c0.281,0.234 0.468,0.457 0.562,0.667c0.093,0.211 0.175,0.48 0.246,0.808c0.07,0.328 0.117,0.808 0.14,1.441c0.024,0.632 0.035,1.487 0.035,2.564Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1200.45,145.208c0,1.827 -0.459,3.126 -1.376,3.899c-0.917,0.773 -1.964,1.159 -3.141,1.159l-41.64,0c0,3.513 0.353,6.675 1.059,9.485c0.706,2.81 1.882,5.222 3.53,7.236c1.647,2.014 3.789,3.559 6.424,4.637c2.636,1.077 5.86,1.615 9.672,1.615c3.012,0 5.694,-0.245 8.047,-0.737c2.354,-0.492 4.389,-1.042 6.107,-1.651c1.718,-0.609 3.13,-1.159 4.236,-1.651c1.106,-0.492 1.942,-0.738 2.507,-0.738c0.329,0 0.623,0.082 0.882,0.246c0.259,0.164 0.458,0.41 0.6,0.738c0.141,0.328 0.247,0.784 0.317,1.37c0.071,0.585 0.106,1.299 0.106,2.142c0,0.609 -0.023,1.136 -0.07,1.581c-0.047,0.445 -0.105,0.843 -0.175,1.194c-0.071,0.352 -0.188,0.668 -0.352,0.949c-0.164,0.281 -0.374,0.55 -0.632,0.808c-0.258,0.257 -1.019,0.679 -2.283,1.264c-1.265,0.586 -2.904,1.16 -4.918,1.722c-2.014,0.562 -4.344,1.065 -6.99,1.51c-2.647,0.445 -5.468,0.667 -8.466,0.667c-5.199,0 -9.753,-0.726 -13.664,-2.177c-3.911,-1.452 -7.201,-3.607 -9.871,-6.464c-2.67,-2.857 -4.683,-6.44 -6.042,-10.749c-1.358,-4.309 -2.037,-9.32 -2.037,-15.034c0,-5.433 0.702,-10.316 2.108,-14.648c1.405,-4.332 3.43,-8.009 6.077,-11.03c2.646,-3.021 5.842,-5.339 9.589,-6.955c3.747,-1.616 7.939,-2.424 12.576,-2.424c4.964,0 9.191,0.797 12.68,2.389c3.49,1.592 6.358,3.735 8.606,6.428c2.249,2.693 3.9,5.855 4.953,9.485c1.054,3.629 1.581,7.505 1.581,11.627l0,2.107Zm-11.662,-3.442c0.14,-6.089 -1.214,-10.866 -4.065,-14.332c-2.85,-3.466 -7.079,-5.199 -12.687,-5.199c-2.875,0 -5.396,0.539 -7.564,1.616c-2.167,1.077 -3.982,2.506 -5.443,4.285c-1.461,1.78 -2.592,3.853 -3.393,6.218c-0.801,2.365 -1.248,4.836 -1.343,7.412l34.495,0Z" style="fill:#333;fill-rule:nonzero;"/><path d="M379.752,276.089c0,0.493 -0.016,0.924 -0.047,1.294c-0.03,0.369 -0.084,0.693 -0.161,0.97c-0.077,0.277 -0.177,0.524 -0.301,0.739c-0.123,0.216 -0.338,0.478 -0.646,0.786c-0.308,0.308 -0.955,0.778 -1.941,1.409c-0.986,0.631 -2.21,1.247 -3.673,1.848c-1.463,0.601 -3.142,1.109 -5.036,1.525c-1.894,0.416 -3.966,0.623 -6.214,0.623c-3.881,0 -7.385,-0.646 -10.511,-1.94c-3.127,-1.294 -5.791,-3.203 -7.993,-5.729c-2.203,-2.526 -3.897,-5.645 -5.083,-9.356c-1.185,-3.712 -1.778,-7.985 -1.778,-12.821c0,-4.959 0.639,-9.379 1.917,-13.26c1.278,-3.881 3.072,-7.169 5.383,-9.865c2.31,-2.695 5.074,-4.751 8.293,-6.168c3.219,-1.417 6.784,-2.125 10.696,-2.125c1.725,0 3.403,0.162 5.036,0.485c1.632,0.324 3.142,0.732 4.528,1.225c1.386,0.492 2.618,1.062 3.696,1.709c1.078,0.647 1.825,1.178 2.241,1.594c0.416,0.416 0.685,0.732 0.808,0.947c0.123,0.216 0.224,0.47 0.301,0.763c0.077,0.292 0.138,0.639 0.184,1.039c0.047,0.4 0.07,0.878 0.07,1.432c0,0.616 -0.031,1.14 -0.093,1.571c-0.062,0.431 -0.155,0.793 -0.279,1.086c-0.124,0.293 -0.271,0.508 -0.441,0.647c-0.171,0.138 -0.38,0.208 -0.628,0.208c-0.433,0 -1.036,-0.301 -1.811,-0.901c-0.774,-0.601 -1.773,-1.263 -2.996,-1.987c-1.223,-0.724 -2.71,-1.386 -4.459,-1.987c-1.749,-0.6 -3.847,-0.901 -6.294,-0.901c-2.663,0 -5.086,0.532 -7.269,1.594c-2.183,1.063 -4.049,2.626 -5.597,4.69c-1.549,2.064 -2.748,4.582 -3.6,7.554c-0.852,2.972 -1.278,6.368 -1.278,10.188c0,3.788 0.411,7.138 1.231,10.049c0.821,2.91 1.998,5.344 3.53,7.3c1.533,1.956 3.415,3.434 5.644,4.435c2.23,1.001 4.753,1.502 7.571,1.502c2.384,0 4.467,-0.293 6.247,-0.878c1.781,-0.585 3.298,-1.24 4.552,-1.964c1.254,-0.724 2.283,-1.378 3.089,-1.963c0.805,-0.586 1.44,-0.878 1.904,-0.878c0.217,0 0.403,0.046 0.558,0.138c0.154,0.093 0.278,0.27 0.371,0.532c0.093,0.262 0.163,0.623 0.209,1.085c0.046,0.462 0.07,1.048 0.07,1.756Z" style="fill:#333;fill-rule:nonzero;"/><path d="M428.079,262.136c0,3.388 -0.446,6.507 -1.339,9.356c-0.894,2.849 -2.226,5.306 -3.997,7.369c-1.771,2.064 -3.989,3.673 -6.653,4.828c-2.664,1.156 -5.752,1.733 -9.264,1.733c-3.419,0 -6.399,-0.508 -8.94,-1.525c-2.541,-1.016 -4.659,-2.495 -6.353,-4.435c-1.694,-1.941 -2.957,-4.297 -3.788,-7.069c-0.832,-2.772 -1.248,-5.914 -1.248,-9.425c0,-3.388 0.439,-6.507 1.317,-9.356c0.878,-2.849 2.202,-5.306 3.973,-7.37c1.772,-2.063 3.982,-3.665 6.63,-4.805c2.649,-1.139 5.745,-1.709 9.287,-1.709c3.419,0 6.399,0.508 8.94,1.525c2.541,1.016 4.659,2.494 6.353,4.435c1.694,1.94 2.965,4.297 3.812,7.069c0.847,2.772 1.27,5.898 1.27,9.379Zm-7.9,0.508c0,-2.248 -0.21,-4.374 -0.63,-6.376c-0.419,-2.002 -1.111,-3.757 -2.074,-5.267c-0.964,-1.509 -2.269,-2.703 -3.917,-3.58c-1.647,-0.878 -3.698,-1.317 -6.153,-1.317c-2.269,0 -4.219,0.4 -5.851,1.201c-1.632,0.801 -2.976,1.933 -4.033,3.396c-1.056,1.463 -1.841,3.196 -2.354,5.198c-0.513,2.002 -0.769,4.189 -0.769,6.56c0,2.28 0.21,4.42 0.629,6.423c0.42,2.002 1.119,3.75 2.098,5.244c0.979,1.493 2.292,2.679 3.939,3.557c1.648,0.878 3.699,1.317 6.154,1.317c2.238,0 4.181,-0.401 5.828,-1.201c1.647,-0.801 2.999,-1.925 4.056,-3.373c1.056,-1.448 1.833,-3.173 2.331,-5.175c0.497,-2.002 0.746,-4.204 0.746,-6.607Z" style="fill:#333;fill-rule:nonzero;"/><path d="M500.987,283.389c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.493,0.062 -1.109,0.092 -1.848,0.092c-0.77,0 -1.401,-0.03 -1.894,-0.092c-0.493,-0.062 -0.886,-0.154 -1.178,-0.277c-0.293,-0.123 -0.501,-0.27 -0.624,-0.439c-0.123,-0.17 -0.185,-0.377 -0.185,-0.624l0,-25.273c0,-1.755 -0.154,-3.357 -0.462,-4.805c-0.308,-1.447 -0.801,-2.695 -1.478,-3.742c-0.678,-1.047 -1.54,-1.848 -2.588,-2.403c-1.047,-0.554 -2.279,-0.831 -3.696,-0.831c-1.756,0 -3.519,0.677 -5.29,2.033c-1.771,1.355 -3.719,3.342 -5.845,5.96l0,29.061c0,0.247 -0.061,0.454 -0.184,0.624c-0.124,0.169 -0.332,0.316 -0.624,0.439c-0.293,0.123 -0.685,0.215 -1.178,0.277c-0.493,0.062 -1.109,0.092 -1.848,0.092c-0.709,0 -1.317,-0.03 -1.825,-0.092c-0.509,-0.062 -0.909,-0.154 -1.202,-0.277c-0.292,-0.123 -0.492,-0.27 -0.6,-0.439c-0.108,-0.17 -0.162,-0.377 -0.162,-0.624l0,-25.273c0,-1.755 -0.169,-3.357 -0.508,-4.805c-0.339,-1.447 -0.847,-2.695 -1.525,-3.742c-0.678,-1.047 -1.532,-1.848 -2.564,-2.403c-1.032,-0.554 -2.256,-0.831 -3.673,-0.831c-1.756,0 -3.527,0.677 -5.314,2.033c-1.786,1.355 -3.727,3.342 -5.821,5.96l0,29.061c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.6,0.439c-0.278,0.123 -0.663,0.215 -1.156,0.277c-0.492,0.062 -1.124,0.092 -1.894,0.092c-0.739,0 -1.355,-0.03 -1.848,-0.092c-0.493,-0.062 -0.885,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.27 -0.601,-0.439c-0.108,-0.17 -0.161,-0.377 -0.161,-0.624l0,-41.582c0,-0.246 0.046,-0.454 0.138,-0.624c0.093,-0.169 0.277,-0.323 0.555,-0.462c0.277,-0.138 0.631,-0.231 1.062,-0.277c0.432,-0.046 1.001,-0.069 1.71,-0.069c0.677,0 1.24,0.023 1.686,0.069c0.447,0.046 0.793,0.139 1.04,0.277c0.246,0.139 0.423,0.293 0.531,0.462c0.108,0.17 0.162,0.378 0.162,0.624l0,5.498c2.341,-2.618 4.612,-4.535 6.815,-5.752c2.202,-1.217 4.427,-1.825 6.676,-1.825c1.725,0 3.273,0.2 4.643,0.601c1.371,0.4 2.58,0.962 3.627,1.686c1.047,0.724 1.941,1.586 2.68,2.587c0.739,1.001 1.355,2.118 1.848,3.35c1.386,-1.509 2.703,-2.788 3.95,-3.835c1.248,-1.047 2.449,-1.894 3.604,-2.541c1.155,-0.647 2.279,-1.117 3.373,-1.409c1.093,-0.293 2.194,-0.439 3.303,-0.439c2.68,0 4.929,0.47 6.746,1.409c1.817,0.939 3.288,2.195 4.412,3.766c1.124,1.57 1.925,3.411 2.403,5.521c0.477,2.11 0.716,4.335 0.716,6.676l0,26.289Z" style="fill:#333;fill-rule:nonzero;"/><path d="M576.574,283.389c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.492,0.062 -1.108,0.092 -1.848,0.092c-0.77,0 -1.401,-0.03 -1.894,-0.092c-0.493,-0.062 -0.886,-0.154 -1.178,-0.277c-0.293,-0.123 -0.501,-0.27 -0.624,-0.439c-0.123,-0.17 -0.185,-0.377 -0.185,-0.624l0,-25.273c0,-1.755 -0.154,-3.357 -0.462,-4.805c-0.308,-1.447 -0.801,-2.695 -1.478,-3.742c-0.678,-1.047 -1.54,-1.848 -2.588,-2.403c-1.047,-0.554 -2.279,-0.831 -3.696,-0.831c-1.755,0 -3.519,0.677 -5.29,2.033c-1.771,1.355 -3.719,3.342 -5.844,5.96l0,29.061c0,0.247 -0.062,0.454 -0.185,0.624c-0.124,0.169 -0.331,0.316 -0.624,0.439c-0.293,0.123 -0.685,0.215 -1.178,0.277c-0.493,0.062 -1.109,0.092 -1.848,0.092c-0.709,0 -1.317,-0.03 -1.825,-0.092c-0.509,-0.062 -0.909,-0.154 -1.202,-0.277c-0.292,-0.123 -0.492,-0.27 -0.6,-0.439c-0.108,-0.17 -0.162,-0.377 -0.162,-0.624l0,-25.273c0,-1.755 -0.169,-3.357 -0.508,-4.805c-0.339,-1.447 -0.847,-2.695 -1.525,-3.742c-0.677,-1.047 -1.532,-1.848 -2.564,-2.403c-1.032,-0.554 -2.256,-0.831 -3.673,-0.831c-1.756,0 -3.527,0.677 -5.313,2.033c-1.787,1.355 -3.727,3.342 -5.822,5.96l0,29.061c0,0.247 -0.061,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.6,0.439c-0.278,0.123 -0.663,0.215 -1.155,0.277c-0.493,0.062 -1.125,0.092 -1.895,0.092c-0.739,0 -1.355,-0.03 -1.848,-0.092c-0.493,-0.062 -0.885,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.27 -0.601,-0.439c-0.107,-0.17 -0.161,-0.377 -0.161,-0.624l0,-41.582c0,-0.246 0.046,-0.454 0.138,-0.624c0.093,-0.169 0.278,-0.323 0.555,-0.462c0.277,-0.138 0.631,-0.231 1.062,-0.277c0.432,-0.046 1.001,-0.069 1.71,-0.069c0.678,0 1.24,0.023 1.686,0.069c0.447,0.046 0.793,0.139 1.04,0.277c0.246,0.139 0.423,0.293 0.531,0.462c0.108,0.17 0.162,0.378 0.162,0.624l0,5.498c2.341,-2.618 4.612,-4.535 6.815,-5.752c2.202,-1.217 4.427,-1.825 6.676,-1.825c1.725,0 3.273,0.2 4.643,0.601c1.371,0.4 2.58,0.962 3.627,1.686c1.047,0.724 1.941,1.586 2.68,2.587c0.739,1.001 1.355,2.118 1.848,3.35c1.386,-1.509 2.703,-2.788 3.95,-3.835c1.248,-1.047 2.449,-1.894 3.604,-2.541c1.155,-0.647 2.279,-1.117 3.373,-1.409c1.093,-0.293 2.195,-0.439 3.303,-0.439c2.68,0 4.929,0.47 6.746,1.409c1.817,0.939 3.288,2.195 4.412,3.766c1.125,1.57 1.925,3.411 2.403,5.521c0.477,2.11 0.716,4.335 0.716,6.676l0,26.289Z" style="fill:#333;fill-rule:nonzero;"/><path d="M626.103,283.389c0,0.247 -0.054,0.454 -0.162,0.624c-0.108,0.169 -0.3,0.316 -0.577,0.439c-0.278,0.123 -0.639,0.215 -1.086,0.277c-0.447,0.062 -0.993,0.092 -1.64,0.092c-0.709,0 -1.286,-0.03 -1.733,-0.092c-0.447,-0.062 -0.801,-0.154 -1.063,-0.277c-0.261,-0.123 -0.438,-0.27 -0.531,-0.439c-0.092,-0.17 -0.138,-0.377 -0.138,-0.624l0,-5.498c-2.372,2.618 -4.713,4.528 -7.023,5.729c-2.31,1.201 -4.651,1.802 -7.023,1.802c-2.772,0 -5.105,-0.462 -7,-1.386c-1.894,-0.924 -3.426,-2.179 -4.597,-3.766c-1.17,-1.586 -2.01,-3.434 -2.518,-5.544c-0.508,-2.11 -0.762,-4.674 -0.762,-7.693l0,-25.226c0,-0.246 0.054,-0.454 0.162,-0.624c0.107,-0.169 0.315,-0.323 0.623,-0.462c0.308,-0.138 0.709,-0.231 1.202,-0.277c0.492,-0.046 1.108,-0.069 1.848,-0.069c0.739,0 1.355,0.023 1.848,0.069c0.493,0.046 0.885,0.139 1.178,0.277c0.292,0.139 0.5,0.293 0.624,0.462c0.123,0.17 0.184,0.378 0.184,0.624l0,24.21c0,2.433 0.178,4.382 0.532,5.845c0.354,1.463 0.893,2.71 1.617,3.742c0.724,1.032 1.64,1.833 2.749,2.403c1.109,0.569 2.402,0.854 3.881,0.854c1.91,0 3.812,-0.677 5.706,-2.033c1.894,-1.355 3.904,-3.342 6.029,-5.96l0,-29.061c0,-0.246 0.054,-0.454 0.162,-0.624c0.108,-0.169 0.316,-0.323 0.624,-0.462c0.308,-0.138 0.7,-0.231 1.178,-0.277c0.477,-0.046 1.101,-0.069 1.871,-0.069c0.739,0 1.355,0.023 1.848,0.069c0.493,0.046 0.878,0.139 1.155,0.277c0.277,0.139 0.485,0.293 0.624,0.462c0.139,0.17 0.208,0.378 0.208,0.624l0,41.582Z" style="fill:#333;fill-rule:nonzero;"/><path d="M676.001,283.389c0,0.247 -0.061,0.454 -0.184,0.624c-0.124,0.169 -0.324,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.493,0.062 -1.109,0.092 -1.848,0.092c-0.77,0 -1.402,-0.03 -1.894,-0.092c-0.493,-0.062 -0.878,-0.154 -1.155,-0.277c-0.278,-0.123 -0.478,-0.27 -0.601,-0.439c-0.123,-0.17 -0.185,-0.377 -0.185,-0.624l0,-24.349c0,-2.371 -0.185,-4.281 -0.554,-5.729c-0.37,-1.447 -0.909,-2.695 -1.617,-3.742c-0.709,-1.047 -1.625,-1.848 -2.749,-2.403c-1.125,-0.554 -2.426,-0.831 -3.905,-0.831c-1.909,0 -3.819,0.677 -5.729,2.033c-1.909,1.355 -3.911,3.342 -6.006,5.96l0,29.061c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.6,0.439c-0.278,0.123 -0.663,0.215 -1.155,0.277c-0.493,0.062 -1.125,0.092 -1.895,0.092c-0.739,0 -1.355,-0.03 -1.848,-0.092c-0.493,-0.062 -0.885,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.27 -0.601,-0.439c-0.107,-0.17 -0.161,-0.377 -0.161,-0.624l0,-41.582c0,-0.246 0.046,-0.454 0.138,-0.624c0.093,-0.169 0.277,-0.323 0.555,-0.462c0.277,-0.138 0.631,-0.231 1.062,-0.277c0.432,-0.046 1.001,-0.069 1.71,-0.069c0.677,0 1.24,0.023 1.686,0.069c0.447,0.046 0.793,0.139 1.04,0.277c0.246,0.139 0.423,0.293 0.531,0.462c0.108,0.17 0.162,0.378 0.162,0.624l0,5.498c2.341,-2.618 4.674,-4.535 6.999,-5.752c2.326,-1.217 4.675,-1.825 7.046,-1.825c2.772,0 5.106,0.47 7,1.409c1.894,0.939 3.427,2.195 4.597,3.766c1.171,1.57 2.01,3.411 2.518,5.521c0.508,2.11 0.762,4.643 0.762,7.6l0,25.365Z" style="fill:#333;fill-rule:nonzero;"/><path d="M697.532,283.389c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.493,0.062 -1.124,0.092 -1.894,0.092c-0.739,0 -1.355,-0.03 -1.848,-0.092c-0.493,-0.062 -0.886,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.27 -0.601,-0.439c-0.108,-0.17 -0.162,-0.377 -0.162,-0.624l0,-41.582c0,-0.216 0.054,-0.416 0.162,-0.601c0.108,-0.184 0.308,-0.338 0.601,-0.462c0.292,-0.123 0.685,-0.215 1.178,-0.277c0.493,-0.061 1.109,-0.092 1.848,-0.092c0.77,0 1.401,0.031 1.894,0.092c0.493,0.062 0.878,0.154 1.155,0.277c0.278,0.124 0.478,0.278 0.601,0.462c0.123,0.185 0.185,0.385 0.185,0.601l0,41.582Zm0.878,-55.628c0,1.787 -0.339,3.004 -1.017,3.65c-0.677,0.647 -1.925,0.971 -3.742,0.971c-1.787,0 -3.011,-0.316 -3.673,-0.947c-0.663,-0.632 -0.994,-1.825 -0.994,-3.581c0,-1.787 0.339,-3.003 1.017,-3.65c0.677,-0.647 1.925,-0.97 3.742,-0.97c1.787,0 3.011,0.315 3.673,0.947c0.663,0.631 0.994,1.825 0.994,3.58Z" style="fill:#333;fill-rule:nonzero;"/><path d="M733.246,280.34c0,0.893 -0.061,1.601 -0.185,2.125c-0.123,0.524 -0.308,0.909 -0.554,1.155c-0.246,0.247 -0.616,0.478 -1.109,0.693c-0.493,0.216 -1.055,0.393 -1.686,0.532c-0.632,0.138 -1.302,0.254 -2.01,0.346c-0.708,0.092 -1.417,0.139 -2.125,0.139c-2.156,0 -4.005,-0.285 -5.545,-0.855c-1.54,-0.57 -2.803,-1.432 -3.788,-2.587c-0.986,-1.155 -1.702,-2.619 -2.149,-4.39c-0.446,-1.771 -0.67,-3.858 -0.67,-6.26l0,-24.303l-5.821,0c-0.462,0 -0.832,-0.246 -1.109,-0.739c-0.277,-0.493 -0.416,-1.293 -0.416,-2.402c0,-0.586 0.039,-1.078 0.116,-1.479c0.077,-0.4 0.177,-0.731 0.3,-0.993c0.123,-0.262 0.285,-0.447 0.485,-0.555c0.2,-0.107 0.424,-0.161 0.67,-0.161l5.775,0l0,-9.888c0,-0.215 0.054,-0.415 0.162,-0.6c0.108,-0.185 0.308,-0.347 0.601,-0.485c0.292,-0.139 0.685,-0.239 1.178,-0.301c0.493,-0.061 1.109,-0.092 1.848,-0.092c0.77,0 1.401,0.031 1.894,0.092c0.493,0.062 0.878,0.162 1.155,0.301c0.278,0.138 0.478,0.3 0.601,0.485c0.123,0.185 0.185,0.385 0.185,0.6l0,9.888l10.673,0c0.246,0 0.462,0.054 0.646,0.161c0.185,0.108 0.347,0.293 0.486,0.555c0.138,0.262 0.238,0.593 0.3,0.993c0.061,0.401 0.092,0.893 0.092,1.479c0,1.109 -0.138,1.909 -0.416,2.402c-0.277,0.493 -0.646,0.739 -1.108,0.739l-10.673,0l0,23.194c0,2.865 0.423,5.028 1.27,6.491c0.847,1.464 2.364,2.195 4.551,2.195c0.709,0 1.34,-0.069 1.895,-0.208c0.554,-0.138 1.047,-0.285 1.478,-0.439c0.431,-0.154 0.801,-0.3 1.109,-0.439c0.308,-0.138 0.585,-0.208 0.832,-0.208c0.154,0 0.3,0.039 0.439,0.116c0.138,0.077 0.246,0.223 0.323,0.439c0.077,0.215 0.146,0.508 0.208,0.878c0.061,0.369 0.092,0.831 0.092,1.386Z" style="fill:#333;fill-rule:nonzero;"/><path d="M762.261,284.544l-5.544,15.293c-0.185,0.493 -0.654,0.87 -1.409,1.132c-0.755,0.262 -1.902,0.393 -3.442,0.393c-0.801,0 -1.448,-0.039 -1.941,-0.116c-0.493,-0.077 -0.87,-0.208 -1.132,-0.392c-0.261,-0.185 -0.408,-0.432 -0.439,-0.74c-0.03,-0.308 0.047,-0.677 0.231,-1.108l5.73,-14.462c-0.278,-0.123 -0.539,-0.323 -0.786,-0.6c-0.246,-0.278 -0.416,-0.57 -0.508,-0.878l-14.831,-39.734c-0.247,-0.647 -0.37,-1.155 -0.37,-1.525c0,-0.37 0.123,-0.662 0.37,-0.878c0.246,-0.215 0.647,-0.362 1.201,-0.439c0.555,-0.077 1.294,-0.115 2.218,-0.115c0.924,0 1.648,0.023 2.171,0.069c0.524,0.046 0.94,0.131 1.248,0.254c0.308,0.123 0.531,0.3 0.67,0.531c0.138,0.231 0.285,0.547 0.439,0.948l11.874,33.358l0.138,0l11.459,-33.543c0.184,-0.585 0.408,-0.963 0.669,-1.132c0.262,-0.17 0.655,-0.293 1.179,-0.37c0.523,-0.077 1.278,-0.115 2.264,-0.115c0.862,0 1.57,0.038 2.125,0.115c0.554,0.077 0.962,0.224 1.224,0.439c0.262,0.216 0.393,0.508 0.393,0.878c0,0.37 -0.092,0.832 -0.277,1.386l-14.924,41.351Z" style="fill:#333;fill-rule:nonzero;"/><path d="M840.528,267.773c0,2.803 -0.516,5.298 -1.548,7.485c-1.031,2.186 -2.464,4.042 -4.296,5.567c-1.833,1.525 -3.989,2.672 -6.469,3.442c-2.479,0.77 -5.151,1.155 -8.016,1.155c-2.002,0 -3.858,-0.169 -5.567,-0.508c-1.71,-0.339 -3.234,-0.755 -4.574,-1.248c-1.34,-0.492 -2.464,-1.001 -3.373,-1.524c-0.909,-0.524 -1.54,-0.971 -1.894,-1.34c-0.355,-0.37 -0.616,-0.84 -0.786,-1.409c-0.169,-0.57 -0.254,-1.333 -0.254,-2.287c0,-0.678 0.031,-1.24 0.093,-1.687c0.061,-0.446 0.154,-0.808 0.277,-1.086c0.123,-0.277 0.277,-0.469 0.462,-0.577c0.185,-0.108 0.4,-0.162 0.647,-0.162c0.431,0 1.039,0.262 1.825,0.786c0.785,0.523 1.794,1.093 3.026,1.709c1.232,0.616 2.718,1.194 4.458,1.733c1.741,0.539 3.75,0.808 6.03,0.808c1.725,0 3.303,-0.231 4.736,-0.693c1.432,-0.462 2.664,-1.116 3.696,-1.963c1.032,-0.847 1.825,-1.887 2.379,-3.119c0.555,-1.232 0.832,-2.634 0.832,-4.204c0,-1.695 -0.385,-3.142 -1.155,-4.343c-0.77,-1.202 -1.787,-2.257 -3.05,-3.165c-1.262,-0.909 -2.702,-1.741 -4.32,-2.495c-1.617,-0.755 -3.272,-1.525 -4.966,-2.31c-1.694,-0.786 -3.342,-1.656 -4.944,-2.611c-1.602,-0.955 -3.034,-2.079 -4.297,-3.373c-1.263,-1.293 -2.287,-2.81 -3.072,-4.551c-0.786,-1.74 -1.178,-3.827 -1.178,-6.26c0,-2.495 0.454,-4.72 1.363,-6.676c0.908,-1.956 2.171,-3.596 3.788,-4.921c1.617,-1.324 3.542,-2.333 5.775,-3.026c2.234,-0.693 4.644,-1.04 7.231,-1.04c1.325,0 2.657,0.116 3.997,0.347c1.34,0.231 2.602,0.539 3.788,0.924c1.186,0.385 2.241,0.816 3.165,1.294c0.924,0.477 1.532,0.862 1.825,1.155c0.293,0.292 0.485,0.523 0.578,0.693c0.092,0.169 0.169,0.385 0.231,0.647c0.061,0.261 0.107,0.577 0.138,0.947c0.031,0.369 0.046,0.847 0.046,1.432c0,0.554 -0.023,1.047 -0.069,1.479c-0.046,0.431 -0.115,0.793 -0.208,1.085c-0.092,0.293 -0.223,0.508 -0.392,0.647c-0.17,0.139 -0.362,0.208 -0.578,0.208c-0.339,0 -0.87,-0.216 -1.594,-0.647c-0.724,-0.431 -1.609,-0.916 -2.657,-1.455c-1.047,-0.539 -2.287,-1.032 -3.719,-1.479c-1.432,-0.446 -3.042,-0.67 -4.828,-0.67c-1.663,0 -3.111,0.224 -4.343,0.67c-1.232,0.447 -2.249,1.04 -3.049,1.779c-0.801,0.739 -1.402,1.617 -1.802,2.634c-0.401,1.016 -0.601,2.094 -0.601,3.234c0,1.663 0.385,3.095 1.155,4.297c0.77,1.201 1.794,2.264 3.073,3.188c1.278,0.924 2.733,1.771 4.366,2.541c1.632,0.77 3.295,1.548 4.99,2.333c1.694,0.785 3.357,1.648 4.989,2.587c1.633,0.94 3.088,2.049 4.367,3.327c1.278,1.278 2.31,2.787 3.095,4.528c0.786,1.74 1.178,3.796 1.178,6.168Z" style="fill:#333;fill-rule:nonzero;"/><path d="M886.638,283.389c0,0.247 -0.054,0.454 -0.161,0.624c-0.108,0.169 -0.301,0.316 -0.578,0.439c-0.277,0.123 -0.639,0.215 -1.086,0.277c-0.446,0.062 -0.993,0.092 -1.64,0.092c-0.708,0 -1.286,-0.03 -1.733,-0.092c-0.446,-0.062 -0.8,-0.154 -1.062,-0.277c-0.262,-0.123 -0.439,-0.27 -0.532,-0.439c-0.092,-0.17 -0.138,-0.377 -0.138,-0.624l0,-5.498c-2.372,2.618 -4.713,4.528 -7.023,5.729c-2.31,1.201 -4.651,1.802 -7.023,1.802c-2.772,0 -5.105,-0.462 -6.999,-1.386c-1.895,-0.924 -3.427,-2.179 -4.597,-3.766c-1.171,-1.586 -2.01,-3.434 -2.519,-5.544c-0.508,-2.11 -0.762,-4.674 -0.762,-7.693l0,-25.226c0,-0.246 0.054,-0.454 0.162,-0.624c0.108,-0.169 0.316,-0.323 0.624,-0.462c0.308,-0.138 0.708,-0.231 1.201,-0.277c0.493,-0.046 1.109,-0.069 1.848,-0.069c0.739,0 1.355,0.023 1.848,0.069c0.493,0.046 0.886,0.139 1.178,0.277c0.293,0.139 0.501,0.293 0.624,0.462c0.123,0.17 0.185,0.378 0.185,0.624l0,24.21c0,2.433 0.177,4.382 0.531,5.845c0.354,1.463 0.893,2.71 1.617,3.742c0.724,1.032 1.64,1.833 2.749,2.403c1.109,0.569 2.403,0.854 3.881,0.854c1.91,0 3.812,-0.677 5.706,-2.033c1.895,-1.355 3.904,-3.342 6.03,-5.96l0,-29.061c0,-0.246 0.054,-0.454 0.161,-0.624c0.108,-0.169 0.316,-0.323 0.624,-0.462c0.308,-0.138 0.701,-0.231 1.178,-0.277c0.478,-0.046 1.101,-0.069 1.871,-0.069c0.74,0 1.356,0.023 1.849,0.069c0.492,0.046 0.877,0.139 1.155,0.277c0.277,0.139 0.485,0.293 0.623,0.462c0.139,0.17 0.208,0.378 0.208,0.624l0,41.582Z" style="fill:#333;fill-rule:nonzero;"/><path d="M938.986,261.951c0,3.635 -0.393,6.9 -1.179,9.795c-0.785,2.895 -1.94,5.352 -3.465,7.369c-1.524,2.018 -3.411,3.573 -5.66,4.667c-2.248,1.093 -4.82,1.64 -7.715,1.64c-1.232,0 -2.372,-0.123 -3.419,-0.37c-1.048,-0.246 -2.072,-0.631 -3.073,-1.155c-1.001,-0.523 -1.994,-1.185 -2.98,-1.986c-0.986,-0.801 -2.033,-1.741 -3.142,-2.819l0,20.791c0,0.247 -0.061,0.462 -0.184,0.647c-0.124,0.185 -0.324,0.339 -0.601,0.462c-0.277,0.123 -0.662,0.216 -1.155,0.277c-0.493,0.062 -1.124,0.093 -1.894,0.093c-0.74,0 -1.356,-0.031 -1.849,-0.093c-0.492,-0.061 -0.885,-0.154 -1.178,-0.277c-0.292,-0.123 -0.493,-0.277 -0.6,-0.462c-0.108,-0.185 -0.162,-0.4 -0.162,-0.647l0,-58.076c0,-0.277 0.046,-0.501 0.139,-0.67c0.092,-0.169 0.277,-0.316 0.554,-0.439c0.277,-0.123 0.631,-0.208 1.063,-0.254c0.431,-0.046 0.954,-0.069 1.571,-0.069c0.646,0 1.178,0.023 1.594,0.069c0.415,0.046 0.762,0.131 1.039,0.254c0.277,0.123 0.47,0.27 0.578,0.439c0.107,0.169 0.161,0.393 0.161,0.67l0,5.59c1.263,-1.293 2.48,-2.417 3.65,-3.372c1.171,-0.955 2.349,-1.748 3.535,-2.38c1.186,-0.631 2.402,-1.109 3.65,-1.432c1.247,-0.323 2.564,-0.485 3.95,-0.485c3.019,0 5.591,0.585 7.716,1.756c2.125,1.17 3.858,2.772 5.198,4.805c1.34,2.033 2.317,4.397 2.933,7.092c0.617,2.695 0.925,5.552 0.925,8.57Zm-7.901,0.878c0,-2.125 -0.163,-4.181 -0.488,-6.168c-0.325,-1.987 -0.883,-3.75 -1.673,-5.29c-0.791,-1.54 -1.852,-2.772 -3.185,-3.696c-1.332,-0.924 -2.99,-1.386 -4.974,-1.386c-0.992,0 -1.968,0.146 -2.929,0.439c-0.96,0.292 -1.936,0.754 -2.928,1.386c-0.992,0.631 -2.03,1.463 -3.115,2.495c-1.085,1.031 -2.231,2.302 -3.44,3.811l0,16.541c2.108,2.556 4.107,4.512 5.997,5.867c1.891,1.356 3.874,2.033 5.95,2.033c1.922,0 3.572,-0.462 4.951,-1.386c1.379,-0.924 2.495,-2.156 3.347,-3.696c0.852,-1.54 1.48,-3.265 1.883,-5.175c0.403,-1.909 0.604,-3.834 0.604,-5.775Z" style="fill:#333;fill-rule:nonzero;"/><path d="M988.699,261.951c0,3.635 -0.392,6.9 -1.178,9.795c-0.785,2.895 -1.94,5.352 -3.465,7.369c-1.525,2.018 -3.411,3.573 -5.66,4.667c-2.248,1.093 -4.82,1.64 -7.716,1.64c-1.232,0 -2.371,-0.123 -3.419,-0.37c-1.047,-0.246 -2.071,-0.631 -3.072,-1.155c-1.001,-0.523 -1.994,-1.185 -2.98,-1.986c-0.986,-0.801 -2.033,-1.741 -3.142,-2.819l0,20.791c0,0.247 -0.061,0.462 -0.185,0.647c-0.123,0.185 -0.323,0.339 -0.6,0.462c-0.278,0.123 -0.663,0.216 -1.155,0.277c-0.493,0.062 -1.125,0.093 -1.895,0.093c-0.739,0 -1.355,-0.031 -1.848,-0.093c-0.493,-0.061 -0.885,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.277 -0.601,-0.462c-0.107,-0.185 -0.161,-0.4 -0.161,-0.647l0,-58.076c0,-0.277 0.046,-0.501 0.138,-0.67c0.093,-0.169 0.278,-0.316 0.555,-0.439c0.277,-0.123 0.631,-0.208 1.062,-0.254c0.432,-0.046 0.955,-0.069 1.571,-0.069c0.647,0 1.178,0.023 1.594,0.069c0.416,0.046 0.763,0.131 1.04,0.254c0.277,0.123 0.47,0.27 0.577,0.439c0.108,0.169 0.162,0.393 0.162,0.67l0,5.59c1.263,-1.293 2.48,-2.417 3.65,-3.372c1.171,-0.955 2.349,-1.748 3.535,-2.38c1.185,-0.631 2.402,-1.109 3.65,-1.432c1.247,-0.323 2.564,-0.485 3.95,-0.485c3.018,0 5.59,0.585 7.716,1.756c2.125,1.17 3.858,2.772 5.197,4.805c1.34,2.033 2.318,4.397 2.934,7.092c0.616,2.695 0.924,5.552 0.924,8.57Zm-7.9,0.878c0,-2.125 -0.163,-4.181 -0.488,-6.168c-0.326,-1.987 -0.883,-3.75 -1.674,-5.29c-0.79,-1.54 -1.851,-2.772 -3.184,-3.696c-1.333,-0.924 -2.991,-1.386 -4.974,-1.386c-0.992,0 -1.968,0.146 -2.929,0.439c-0.96,0.292 -1.937,0.754 -2.928,1.386c-0.992,0.631 -2.03,1.463 -3.115,2.495c-1.085,1.031 -2.231,2.302 -3.44,3.811l0,16.541c2.108,2.556 4.107,4.512 5.997,5.867c1.891,1.356 3.874,2.033 5.95,2.033c1.921,0 3.571,-0.462 4.951,-1.386c1.379,-0.924 2.494,-2.156 3.347,-3.696c0.852,-1.54 1.48,-3.265 1.882,-5.175c0.403,-1.909 0.605,-3.834 0.605,-5.775Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1038.83,262.136c0,3.388 -0.447,6.507 -1.34,9.356c-0.893,2.849 -2.225,5.306 -3.996,7.369c-1.772,2.064 -3.989,3.673 -6.654,4.828c-2.664,1.156 -5.752,1.733 -9.263,1.733c-3.419,0 -6.399,-0.508 -8.94,-1.525c-2.541,-1.016 -4.659,-2.495 -6.353,-4.435c-1.694,-1.941 -2.957,-4.297 -3.789,-7.069c-0.831,-2.772 -1.247,-5.914 -1.247,-9.425c0,-3.388 0.439,-6.507 1.317,-9.356c0.877,-2.849 2.202,-5.306 3.973,-7.37c1.771,-2.063 3.981,-3.665 6.63,-4.805c2.649,-1.139 5.744,-1.709 9.287,-1.709c3.419,0 6.399,0.508 8.94,1.525c2.541,1.016 4.659,2.494 6.353,4.435c1.694,1.94 2.964,4.297 3.811,7.069c0.847,2.772 1.271,5.898 1.271,9.379Zm-7.901,0.508c0,-2.248 -0.21,-4.374 -0.629,-6.376c-0.42,-2.002 -1.111,-3.757 -2.075,-5.267c-0.963,-1.509 -2.269,-2.703 -3.916,-3.58c-1.647,-0.878 -3.698,-1.317 -6.154,-1.317c-2.269,0 -4.219,0.4 -5.851,1.201c-1.631,0.801 -2.976,1.933 -4.032,3.396c-1.057,1.463 -1.842,3.196 -2.354,5.198c-0.513,2.002 -0.77,4.189 -0.77,6.56c0,2.28 0.21,4.42 0.63,6.423c0.42,2.002 1.119,3.75 2.098,5.244c0.979,1.493 2.292,2.679 3.939,3.557c1.647,0.878 3.698,1.317 6.154,1.317c2.238,0 4.18,-0.401 5.827,-1.201c1.648,-0.801 3,-1.925 4.056,-3.373c1.057,-1.448 1.834,-3.173 2.331,-5.175c0.498,-2.002 0.746,-4.204 0.746,-6.607Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1074.36,244.533c0,0.678 -0.016,1.247 -0.047,1.709c-0.03,0.462 -0.092,0.824 -0.184,1.086c-0.093,0.262 -0.208,0.462 -0.347,0.601c-0.139,0.138 -0.331,0.208 -0.577,0.208c-0.247,0 -0.547,-0.07 -0.901,-0.208c-0.355,-0.139 -0.755,-0.277 -1.202,-0.416c-0.446,-0.139 -0.947,-0.27 -1.501,-0.393c-0.555,-0.123 -1.155,-0.185 -1.802,-0.185c-0.77,0 -1.525,0.154 -2.264,0.462c-0.739,0.308 -1.517,0.817 -2.333,1.525c-0.817,0.709 -1.671,1.648 -2.565,2.818c-0.893,1.171 -1.878,2.603 -2.956,4.297l0,27.352c0,0.247 -0.062,0.454 -0.185,0.624c-0.124,0.169 -0.324,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.493,0.062 -1.124,0.092 -1.894,0.092c-0.74,0 -1.356,-0.03 -1.848,-0.092c-0.493,-0.062 -0.886,-0.154 -1.179,-0.277c-0.292,-0.123 -0.492,-0.27 -0.6,-0.439c-0.108,-0.17 -0.162,-0.377 -0.162,-0.624l0,-41.582c0,-0.246 0.046,-0.454 0.139,-0.624c0.092,-0.169 0.277,-0.323 0.554,-0.462c0.277,-0.138 0.632,-0.231 1.063,-0.277c0.431,-0.046 1.001,-0.069 1.709,-0.069c0.678,0 1.24,0.023 1.687,0.069c0.446,0.046 0.793,0.139 1.039,0.277c0.247,0.139 0.424,0.293 0.532,0.462c0.107,0.17 0.161,0.378 0.161,0.624l0,6.052c1.14,-1.663 2.21,-3.018 3.211,-4.065c1.001,-1.048 1.949,-1.872 2.842,-2.472c0.893,-0.601 1.779,-1.017 2.656,-1.248c0.878,-0.231 1.764,-0.346 2.657,-0.346c0.4,0 0.855,0.023 1.363,0.069c0.508,0.046 1.04,0.131 1.594,0.254c0.554,0.123 1.055,0.262 1.502,0.416c0.446,0.154 0.762,0.308 0.947,0.462c0.185,0.154 0.308,0.3 0.369,0.439c0.062,0.139 0.116,0.316 0.162,0.531c0.046,0.216 0.077,0.532 0.092,0.948c0.016,0.415 0.024,0.977 0.024,1.686Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1104.67,280.34c0,0.893 -0.061,1.601 -0.184,2.125c-0.124,0.524 -0.308,0.909 -0.555,1.155c-0.246,0.247 -0.616,0.478 -1.109,0.693c-0.493,0.216 -1.055,0.393 -1.686,0.532c-0.632,0.138 -1.302,0.254 -2.01,0.346c-0.708,0.092 -1.417,0.139 -2.125,0.139c-2.156,0 -4.004,-0.285 -5.545,-0.855c-1.54,-0.57 -2.802,-1.432 -3.788,-2.587c-0.986,-1.155 -1.702,-2.619 -2.149,-4.39c-0.446,-1.771 -0.669,-3.858 -0.669,-6.26l0,-24.303l-5.822,0c-0.462,0 -0.832,-0.246 -1.109,-0.739c-0.277,-0.493 -0.416,-1.293 -0.416,-2.402c0,-0.586 0.039,-1.078 0.116,-1.479c0.077,-0.4 0.177,-0.731 0.3,-0.993c0.123,-0.262 0.285,-0.447 0.485,-0.555c0.2,-0.107 0.424,-0.161 0.67,-0.161l5.776,0l0,-9.888c0,-0.215 0.053,-0.415 0.161,-0.6c0.108,-0.185 0.308,-0.347 0.601,-0.485c0.292,-0.139 0.685,-0.239 1.178,-0.301c0.493,-0.061 1.109,-0.092 1.848,-0.092c0.77,0 1.402,0.031 1.894,0.092c0.493,0.062 0.878,0.162 1.155,0.301c0.278,0.138 0.478,0.3 0.601,0.485c0.123,0.185 0.185,0.385 0.185,0.6l0,9.888l10.673,0c0.246,0 0.462,0.054 0.646,0.161c0.185,0.108 0.347,0.293 0.486,0.555c0.138,0.262 0.238,0.593 0.3,0.993c0.062,0.401 0.092,0.893 0.092,1.479c0,1.109 -0.138,1.909 -0.415,2.402c-0.278,0.493 -0.647,0.739 -1.109,0.739l-10.673,0l0,23.194c0,2.865 0.423,5.028 1.27,6.491c0.848,1.464 2.364,2.195 4.551,2.195c0.709,0 1.34,-0.069 1.895,-0.208c0.554,-0.138 1.047,-0.285 1.478,-0.439c0.431,-0.154 0.801,-0.3 1.109,-0.439c0.308,-0.138 0.585,-0.208 0.832,-0.208c0.154,0 0.3,0.039 0.439,0.116c0.138,0.077 0.246,0.223 0.323,0.439c0.077,0.215 0.146,0.508 0.208,0.878c0.062,0.369 0.092,0.831 0.092,1.386Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1149.21,260.796c0,1.201 -0.301,2.056 -0.904,2.564c-0.604,0.509 -1.292,0.763 -2.066,0.763l-27.385,0c0,2.31 0.233,4.389 0.697,6.237c0.464,1.848 1.238,3.434 2.321,4.759c1.083,1.324 2.492,2.341 4.225,3.049c1.733,0.709 3.854,1.063 6.36,1.063c1.981,0 3.746,-0.162 5.293,-0.485c1.548,-0.324 2.886,-0.686 4.016,-1.086c1.13,-0.4 2.059,-0.762 2.786,-1.086c0.727,-0.323 1.277,-0.485 1.649,-0.485c0.216,0 0.409,0.054 0.58,0.162c0.17,0.108 0.301,0.269 0.394,0.485c0.093,0.216 0.163,0.516 0.209,0.901c0.047,0.385 0.07,0.855 0.07,1.409c0,0.401 -0.016,0.747 -0.046,1.04c-0.031,0.292 -0.07,0.554 -0.116,0.785c-0.046,0.231 -0.123,0.439 -0.231,0.624c-0.108,0.185 -0.246,0.362 -0.416,0.531c-0.169,0.17 -0.67,0.447 -1.501,0.832c-0.832,0.385 -1.91,0.762 -3.235,1.132c-1.324,0.369 -2.856,0.701 -4.597,0.993c-1.74,0.293 -3.596,0.439 -5.567,0.439c-3.419,0 -6.414,-0.477 -8.986,-1.432c-2.572,-0.955 -4.736,-2.372 -6.492,-4.251c-1.756,-1.879 -3.08,-4.235 -3.973,-7.069c-0.894,-2.834 -1.34,-6.129 -1.34,-9.887c0,-3.573 0.462,-6.784 1.386,-9.633c0.924,-2.849 2.256,-5.267 3.996,-7.254c1.741,-1.987 3.843,-3.511 6.307,-4.574c2.464,-1.063 5.221,-1.594 8.27,-1.594c3.265,0 6.045,0.524 8.34,1.571c2.295,1.047 4.181,2.456 5.66,4.227c1.478,1.771 2.564,3.85 3.257,6.238c0.693,2.387 1.039,4.936 1.039,7.646l0,1.386Zm-7.669,-2.264c0.092,-4.004 -0.799,-7.146 -2.673,-9.425c-1.875,-2.279 -4.656,-3.419 -8.344,-3.419c-1.891,0 -3.549,0.354 -4.974,1.063c-1.426,0.708 -2.619,1.648 -3.58,2.818c-0.961,1.17 -1.705,2.533 -2.231,4.089c-0.527,1.555 -0.821,3.18 -0.884,4.874l22.686,0Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1196.42,283.389c0,0.247 -0.054,0.462 -0.161,0.647c-0.108,0.185 -0.293,0.331 -0.555,0.439c-0.262,0.108 -0.608,0.192 -1.039,0.254c-0.432,0.062 -0.955,0.092 -1.571,0.092c-0.647,0 -1.186,-0.03 -1.617,-0.092c-0.432,-0.062 -0.786,-0.146 -1.063,-0.254c-0.277,-0.108 -0.477,-0.254 -0.601,-0.439c-0.123,-0.185 -0.184,-0.4 -0.184,-0.647l0,-5.498c-2.187,2.372 -4.459,4.22 -6.815,5.544c-2.357,1.325 -4.936,1.987 -7.739,1.987c-3.05,0 -5.652,-0.593 -7.808,-1.779c-2.157,-1.186 -3.905,-2.787 -5.244,-4.805c-1.34,-2.017 -2.318,-4.389 -2.934,-7.115c-0.616,-2.726 -0.924,-5.598 -0.924,-8.617c0,-3.573 0.385,-6.799 1.155,-9.679c0.77,-2.88 1.909,-5.336 3.419,-7.369c1.509,-2.033 3.38,-3.596 5.613,-4.69c2.233,-1.093 4.813,-1.64 7.739,-1.64c2.434,0 4.659,0.531 6.676,1.594c2.018,1.063 4.012,2.626 5.984,4.689l0,-24.163c0,-0.216 0.054,-0.424 0.161,-0.624c0.108,-0.2 0.316,-0.354 0.624,-0.462c0.308,-0.108 0.701,-0.2 1.178,-0.277c0.478,-0.077 1.086,-0.116 1.825,-0.116c0.77,0 1.402,0.039 1.895,0.116c0.492,0.077 0.877,0.169 1.155,0.277c0.277,0.108 0.485,0.262 0.623,0.462c0.139,0.2 0.208,0.408 0.208,0.624l0,61.541Zm-7.669,-29.246c-2.064,-2.557 -4.058,-4.505 -5.984,-5.845c-1.925,-1.339 -3.934,-2.009 -6.029,-2.009c-1.94,0 -3.588,0.462 -4.944,1.386c-1.355,0.924 -2.456,2.14 -3.303,3.65c-0.847,1.509 -1.463,3.218 -1.848,5.128c-0.385,1.91 -0.578,3.85 -0.578,5.822c0,2.094 0.162,4.142 0.485,6.145c0.324,2.002 0.886,3.78 1.687,5.336c0.801,1.555 1.863,2.803 3.188,3.742c1.324,0.94 2.988,1.41 4.99,1.41c1.016,0 1.994,-0.139 2.934,-0.416c0.939,-0.278 1.902,-0.74 2.887,-1.386c0.986,-0.647 2.018,-1.487 3.096,-2.518c1.078,-1.032 2.217,-2.303 3.419,-3.812l0,-16.633Z" style="fill:#333;fill-rule:nonzero;"/><g><g><path d="M280.884,219.245c1.765,0 3.198,-1.433 3.198,-3.198l0,-6.395c0,-1.765 -1.433,-3.197 -3.198,-3.197l-225.605,0c-1.764,0 -3.197,1.432 -3.197,3.197l0,6.395c0,1.765 1.433,3.198 3.197,3.198l225.605,0Z" style="fill:#8c8c8c;"/><path d="M280.884,165.588c1.765,0 3.198,-1.433 3.198,-3.198l0,-6.395c0,-1.765 -1.433,-3.197 -3.198,-3.197l-225.605,0c-1.764,0 -3.197,1.432 -3.197,3.197l0,6.395c0,1.765 1.433,3.198 3.197,3.198l225.605,0Z" style="fill:#8c8c8c;"/><path d="M280.884,192.416c1.765,0 3.198,-1.432 3.198,-3.197l0,-6.395c0,-1.765 -1.433,-3.198 -3.198,-3.198l-225.605,0c-1.764,0 -3.197,1.433 -3.197,3.198l0,6.395c0,1.765 1.433,3.197 3.197,3.197l225.605,0Z" style="fill:#8c8c8c;"/><path d="M280.884,138.759c1.765,0 3.198,-1.432 3.198,-3.197l0,-6.395c0,-1.765 -1.433,-3.198 -3.198,-3.198l-225.605,0c-1.764,0 -3.197,1.433 -3.197,3.198l0,6.395c0,1.765 1.433,3.197 3.197,3.197l225.605,0Z" style="fill:#8c8c8c;"/><path d="M280.884,246.074c1.765,0 3.198,-1.433 3.198,-3.198l0,-6.395c0,-1.765 -1.433,-3.198 -3.198,-3.198l-225.605,0c-1.764,0 -3.197,1.433 -3.197,3.198l0,6.395c0,1.765 1.433,3.198 3.197,3.198l225.605,0Z" style="fill:#8c8c8c;"/><path d="M134.858,298.824c0,1.764 1.433,3.197 3.198,3.197l6.395,0c1.765,0 3.197,-1.433 3.197,-3.197l0,-225.605c0,-1.765 -1.432,-3.198 -3.197,-3.198l-6.395,0c-1.765,0 -3.198,1.433 -3.198,3.198l0,225.605Z" style="fill:#8c8c8c;"/><path d="M188.515,298.824c0,1.764 1.433,3.197 3.198,3.197l6.395,0c1.765,0 3.198,-1.433 3.198,-3.197l0,-225.605c0,-1.765 -1.433,-3.198 -3.198,-3.198l-6.395,0c-1.765,0 -3.198,1.433 -3.198,3.198l0,225.605Z" style="fill:#8c8c8c;"/><path d="M161.687,298.824c0,1.764 1.432,3.197 3.197,3.197l6.395,0c1.765,0 3.198,-1.433 3.198,-3.197l0,-225.605c0,-1.765 -1.433,-3.198 -3.198,-3.198l-6.395,0c-1.765,0 -3.197,1.433 -3.197,3.198l0,225.605Z" style="fill:#8c8c8c;"/><path d="M215.344,298.824c0,1.764 1.433,3.197 3.197,3.197l6.396,0c1.764,0 3.197,-1.433 3.197,-3.197l0,-225.605c0,-1.765 -1.433,-3.198 -3.197,-3.198l-6.396,0c-1.764,0 -3.197,1.433 -3.197,3.198l0,225.605Z" style="fill:#8c8c8c;"/><path d="M108.029,298.824c0,1.764 1.433,3.197 3.198,3.197l6.395,0c1.765,0 3.198,-1.433 3.198,-3.197l0,-225.605c0,-1.765 -1.433,-3.198 -3.198,-3.198l-6.395,0c-1.765,0 -3.198,1.433 -3.198,3.198l0,225.605Z" style="fill:#8c8c8c;"/></g><path d="M232.655,278.269c15.274,0 27.674,-12.401 27.674,-27.674l0,-129.147c0,-15.274 -12.4,-27.674 -27.674,-27.674l-129.146,0c-15.274,0 -27.675,12.4 -27.675,27.674l0,129.147c0,15.273 12.401,27.674 27.675,27.674l129.146,0Z" style="fill:#333;"/><path d="M220.739,175.532c0,6.734 -1.056,12.768 -3.167,18.104c-2.112,5.335 -5.122,9.886 -9.031,13.653c-3.909,3.766 -8.645,6.676 -14.209,8.731c-5.564,2.054 -11.855,3.167 -18.874,3.338l0,20.458c0,0.456 -0.114,0.856 -0.343,1.198c-0.228,0.342 -0.627,0.614 -1.198,0.813c-0.571,0.2 -1.327,0.357 -2.268,0.471c-0.942,0.114 -2.126,0.171 -3.553,0.171c-1.426,0 -2.61,-0.057 -3.552,-0.171c-0.942,-0.114 -1.683,-0.271 -2.226,-0.471c-0.542,-0.199 -0.941,-0.471 -1.198,-0.813c-0.257,-0.342 -0.385,-0.742 -0.385,-1.198l0,-20.458c-7.133,-0.171 -13.496,-1.199 -19.088,-3.082c-5.593,-1.883 -10.329,-4.608 -14.21,-8.174c-3.88,-3.567 -6.847,-7.947 -8.902,-13.139c-2.054,-5.193 -3.081,-11.157 -3.081,-17.89l0,-43.741c0,-0.399 0.128,-0.77 0.385,-1.113c0.257,-0.342 0.656,-0.627 1.198,-0.856c0.542,-0.228 1.284,-0.399 2.226,-0.513c0.941,-0.114 2.125,-0.171 3.552,-0.171c1.427,0 2.611,0.057 3.552,0.171c0.942,0.114 1.698,0.285 2.269,0.513c0.57,0.229 0.97,0.514 1.198,0.856c0.228,0.343 0.343,0.714 0.343,1.113l0,42.457c0,4.736 0.627,9.002 1.883,12.796c1.255,3.795 3.138,7.019 5.649,9.673c2.511,2.654 5.692,4.708 9.544,6.163c3.852,1.455 8.346,2.24 13.482,2.354l0,-73.443c0,-0.399 0.128,-0.77 0.385,-1.113c0.257,-0.342 0.685,-0.627 1.284,-0.856c0.599,-0.228 1.37,-0.399 2.311,-0.513c0.942,-0.114 2.069,-0.171 3.381,-0.171c1.427,0 2.611,0.057 3.553,0.171c0.941,0.114 1.697,0.285 2.268,0.513c0.571,0.229 0.97,0.514 1.198,0.856c0.229,0.343 0.343,0.714 0.343,1.113l0,73.443c5.136,-0.057 9.615,-0.842 13.439,-2.354c3.823,-1.512 7.004,-3.595 9.544,-6.249c2.539,-2.653 4.451,-5.849 5.735,-9.587c1.284,-3.737 1.926,-7.889 1.926,-12.454l0,-42.799c0,-0.399 0.114,-0.77 0.342,-1.113c0.228,-0.342 0.628,-0.627 1.198,-0.856c0.571,-0.228 1.313,-0.399 2.226,-0.513c0.913,-0.114 2.111,-0.171 3.595,-0.171c1.37,0 2.525,0.057 3.467,0.171c0.941,0.114 1.683,0.285 2.225,0.513c0.542,0.229 0.942,0.514 1.199,0.856c0.256,0.343 0.385,0.714 0.385,1.113l0,42.2Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M220.739,175.532c0,6.734 -1.056,12.768 -3.167,18.104c-2.112,5.335 -5.122,9.886 -9.031,13.653c-3.909,3.766 -8.645,6.676 -14.209,8.731c-5.564,2.054 -11.855,3.167 -18.874,3.338l0,20.458c0,0.456 -0.114,0.856 -0.343,1.198c-0.228,0.342 -0.627,0.614 -1.198,0.813c-0.571,0.2 -1.327,0.357 -2.268,0.471c-0.942,0.114 -2.126,0.171 -3.553,0.171c-1.426,0 -2.61,-0.057 -3.552,-0.171c-0.942,-0.114 -1.683,-0.271 -2.226,-0.471c-0.542,-0.199 -0.941,-0.471 -1.198,-0.813c-0.257,-0.342 -0.385,-0.742 -0.385,-1.198l0,-20.458c-7.133,-0.171 -13.496,-1.199 -19.088,-3.082c-5.593,-1.883 -10.329,-4.608 -14.21,-8.174c-3.88,-3.567 -6.847,-7.947 -8.902,-13.139c-2.054,-5.193 -3.081,-11.157 -3.081,-17.89l0,-43.741c0,-0.399 0.128,-0.77 0.385,-1.113c0.257,-0.342 0.656,-0.627 1.198,-0.856c0.542,-0.228 1.284,-0.399 2.226,-0.513c0.941,-0.114 2.125,-0.171 3.552,-0.171c1.427,0 2.611,0.057 3.552,0.171c0.942,0.114 1.698,0.285 2.269,0.513c0.57,0.229 0.97,0.514 1.198,0.856c0.228,0.343 0.343,0.714 0.343,1.113l0,42.457c0,4.736 0.627,9.002 1.883,12.796c1.255,3.795 3.138,7.019 5.649,9.673c2.511,2.654 5.692,4.708 9.544,6.163c3.852,1.455 8.346,2.24 13.482,2.354l0,-73.443c0,-0.399 0.128,-0.77 0.385,-1.113c0.257,-0.342 0.685,-0.627 1.284,-0.856c0.599,-0.228 1.37,-0.399 2.311,-0.513c0.942,-0.114 2.069,-0.171 3.381,-0.171c1.427,0 2.611,0.057 3.553,0.171c0.941,0.114 1.697,0.285 2.268,0.513c0.571,0.229 0.97,0.514 1.198,0.856c0.229,0.343 0.343,0.714 0.343,1.113l0,73.443c5.136,-0.057 9.615,-0.842 13.439,-2.354c3.823,-1.512 7.004,-3.595 9.544,-6.249c2.539,-2.653 4.451,-5.849 5.735,-9.587c1.284,-3.737 1.926,-7.889 1.926,-12.454l0,-42.799c0,-0.399 0.114,-0.77 0.342,-1.113c0.228,-0.342 0.628,-0.627 1.198,-0.856c0.571,-0.228 1.313,-0.399 2.226,-0.513c0.913,-0.114 2.111,-0.171 3.595,-0.171c1.37,0 2.525,0.057 3.467,0.171c0.941,0.114 1.683,0.285 2.225,0.513c0.542,0.229 0.942,0.514 1.199,0.856c0.256,0.343 0.385,0.714 0.385,1.113l0,42.2Z" style="fill:#fff;fill-rule:nonzero;"/></g></g></svg>
\ No newline at end of file +<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg width="100%" height="100%" viewBox="0 0 1260 371" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;"><rect id="badge.-community.-light" x="0" y="0.321" width="1260" height="370" style="fill:none;"/><clipPath id="_clip1"><rect x="0" y="0.321" width="1260" height="370"/></clipPath><g clip-path="url(#_clip1)"><path d="M1260,33.621c0,-18.379 -14.921,-33.3 -33.3,-33.3l-1193.4,0c-18.379,0 -33.3,14.921 -33.3,33.3l0,303.4c0,18.378 14.921,33.3 33.3,33.3l1193.4,0c18.379,0 33.3,-14.922 33.3,-33.3l0,-303.4Z" style="fill:#fff;"/><path d="M426.392,189.328c0,1.077 -0.059,1.978 -0.176,2.704c-0.117,0.726 -0.293,1.288 -0.527,1.686c-0.234,0.398 -0.491,0.668 -0.772,0.808c-0.281,0.141 -0.563,0.211 -0.844,0.211c-0.936,0 -2.447,-0.386 -4.531,-1.159c-2.084,-0.773 -4.484,-1.897 -7.201,-3.372c-2.716,-1.476 -5.62,-3.267 -8.711,-5.375c-3.092,-2.107 -6.089,-4.566 -8.993,-7.376c-2.295,1.405 -5.199,2.622 -8.711,3.653c-3.513,1.03 -7.588,1.545 -12.224,1.545c-6.839,0 -12.752,-1.007 -17.74,-3.021c-4.988,-2.013 -9.109,-4.964 -12.364,-8.851c-3.255,-3.888 -5.679,-8.724 -7.272,-14.508c-1.592,-5.784 -2.388,-12.423 -2.388,-19.917c0,-7.213 0.866,-13.734 2.599,-19.566c1.733,-5.831 4.333,-10.795 7.798,-14.893c3.466,-4.098 7.799,-7.26 12.997,-9.485c5.199,-2.224 11.264,-3.337 18.196,-3.337c6.51,0 12.236,1.007 17.177,3.021c4.941,2.014 9.086,4.953 12.435,8.817c3.349,3.864 5.866,8.63 7.552,14.297c1.686,5.667 2.529,12.177 2.529,19.53c0,3.794 -0.222,7.424 -0.667,10.89c-0.445,3.466 -1.147,6.744 -2.108,9.835c-0.96,3.091 -2.166,5.948 -3.618,8.571c-1.452,2.623 -3.161,4.988 -5.128,7.096c3.419,2.81 6.416,5 8.992,6.569c2.576,1.569 4.707,2.751 6.393,3.547c1.687,0.797 2.998,1.37 3.935,1.722c0.936,0.351 1.639,0.749 2.107,1.194c0.469,0.445 0.796,1.077 0.984,1.897c0.187,0.819 0.281,1.908 0.281,3.267Zm-23.886,-53.745c0,-5.152 -0.457,-9.929 -1.37,-14.331c-0.914,-4.403 -2.436,-8.232 -4.567,-11.487c-2.131,-3.255 -4.976,-5.796 -8.536,-7.622c-3.559,-1.827 -7.962,-2.74 -13.207,-2.74c-5.246,0 -9.649,0.972 -13.208,2.915c-3.56,1.944 -6.452,4.567 -8.676,7.869c-2.225,3.302 -3.818,7.13 -4.778,11.486c-0.96,4.356 -1.44,8.969 -1.44,13.84c0,5.339 0.445,10.245 1.335,14.718c0.89,4.473 2.389,8.349 4.496,11.627c2.108,3.279 4.93,5.82 8.466,7.623c3.536,1.803 7.974,2.705 13.313,2.705c5.292,0 9.742,-0.984 13.348,-2.951c3.606,-1.967 6.51,-4.625 8.711,-7.974c2.202,-3.349 3.771,-7.236 4.707,-11.662c0.937,-4.426 1.406,-9.098 1.406,-14.016Z" style="fill:#333;fill-rule:nonzero;"/><path d="M534.723,179.492c0,0.375 -0.096,0.703 -0.289,0.984c-0.193,0.281 -0.531,0.503 -1.013,0.667c-0.483,0.164 -1.098,0.304 -1.846,0.421c-0.747,0.118 -1.724,0.176 -2.93,0.176c-1.109,0 -2.062,-0.058 -2.858,-0.176c-0.796,-0.117 -1.423,-0.257 -1.881,-0.421c-0.459,-0.164 -0.784,-0.386 -0.977,-0.667c-0.193,-0.281 -0.289,-0.609 -0.289,-0.984l0,-79.176l-0.141,0l-32.036,79.527c-0.14,0.328 -0.339,0.609 -0.597,0.843c-0.257,0.234 -0.632,0.434 -1.124,0.597c-0.492,0.164 -1.077,0.281 -1.756,0.352c-0.679,0.07 -1.487,0.105 -2.424,0.105c-0.984,0 -1.827,-0.047 -2.529,-0.14c-0.703,-0.094 -1.288,-0.223 -1.756,-0.387c-0.469,-0.164 -0.832,-0.363 -1.089,-0.597c-0.258,-0.234 -0.434,-0.492 -0.527,-0.773l-30.631,-79.527l-0.07,0l0,79.176c0,0.375 -0.097,0.703 -0.289,0.984c-0.193,0.281 -0.531,0.503 -1.014,0.667c-0.482,0.164 -1.109,0.304 -1.881,0.421c-0.772,0.118 -1.761,0.176 -2.967,0.176c-1.157,0 -2.122,-0.058 -2.894,-0.176c-0.772,-0.117 -1.387,-0.257 -1.845,-0.421c-0.459,-0.164 -0.772,-0.386 -0.941,-0.667c-0.169,-0.281 -0.253,-0.609 -0.253,-0.984l0,-83.602c0,-1.967 0.523,-3.372 1.569,-4.215c1.046,-0.843 2.212,-1.265 3.496,-1.265l7.419,0c1.522,0 2.853,0.141 3.995,0.422c1.142,0.281 2.14,0.726 2.996,1.335c0.856,0.608 1.569,1.381 2.14,2.318c0.571,0.937 1.07,2.037 1.499,3.302l25.994,65.828l0.351,0l27.047,-65.617c0.524,-1.405 1.095,-2.6 1.713,-3.583c0.619,-0.984 1.297,-1.768 2.035,-2.354c0.738,-0.585 1.558,-1.007 2.462,-1.264c0.904,-0.258 1.951,-0.387 3.141,-0.387l7.779,0c0.715,0 1.393,0.106 2.035,0.316c0.642,0.211 1.189,0.539 1.642,0.984c0.452,0.445 0.821,1.007 1.106,1.686c0.285,0.679 0.428,1.51 0.428,2.494l0,83.602Z" style="fill:#333;fill-rule:nonzero;"/><path d="M618.185,179.351c0,0.375 -0.082,0.715 -0.246,1.019c-0.164,0.305 -0.48,0.55 -0.949,0.738c-0.468,0.187 -1.1,0.339 -1.896,0.456c-0.797,0.118 -1.827,0.176 -3.092,0.176c-1.639,0 -2.974,-0.07 -4.004,-0.211c-1.031,-0.14 -1.803,-0.398 -2.318,-0.772c-0.516,-0.375 -0.937,-0.797 -1.265,-1.265l-33.441,-45.454l0,45.454c0,0.328 -0.094,0.644 -0.281,0.948c-0.187,0.305 -0.515,0.539 -0.983,0.703c-0.469,0.164 -1.089,0.304 -1.862,0.421c-0.773,0.118 -1.745,0.176 -2.916,0.176c-1.124,0 -2.084,-0.058 -2.88,-0.176c-0.796,-0.117 -1.429,-0.257 -1.897,-0.421c-0.468,-0.164 -0.796,-0.398 -0.983,-0.703c-0.188,-0.304 -0.282,-0.62 -0.282,-0.948l0,-87.255c0,-0.375 0.094,-0.703 0.282,-0.984c0.187,-0.281 0.515,-0.503 0.983,-0.667c0.468,-0.164 1.101,-0.305 1.897,-0.422c0.796,-0.117 1.756,-0.175 2.88,-0.175c1.171,0 2.143,0.058 2.916,0.175c0.773,0.117 1.393,0.258 1.862,0.422c0.468,0.164 0.796,0.386 0.983,0.667c0.187,0.281 0.281,0.609 0.281,0.984l0,40.396l32.176,-40.396c0.281,-0.422 0.609,-0.773 0.984,-1.054c0.375,-0.281 0.831,-0.504 1.37,-0.667c0.538,-0.164 1.194,-0.293 1.967,-0.387c0.773,-0.094 1.768,-0.14 2.986,-0.14c1.218,0 2.201,0.058 2.95,0.175c0.75,0.117 1.347,0.27 1.792,0.457c0.445,0.187 0.749,0.421 0.913,0.702c0.164,0.282 0.246,0.586 0.246,0.914c0,0.609 -0.152,1.218 -0.457,1.826c-0.304,0.609 -0.878,1.452 -1.721,2.53l-30.139,36.04l32.458,43.136c0.796,1.217 1.276,2.049 1.44,2.494c0.164,0.444 0.246,0.807 0.246,1.088Z" style="fill:#333;fill-rule:nonzero;"/><path d="M713.941,95.609c0,0.89 -0.047,1.663 -0.141,2.318c-0.094,0.656 -0.258,1.183 -0.492,1.581c-0.234,0.398 -0.503,0.691 -0.808,0.878c-0.304,0.188 -0.62,0.281 -0.948,0.281l-33.3,0l0,30.912l31.473,0c0.328,0 0.644,0.082 0.949,0.246c0.304,0.164 0.574,0.433 0.808,0.808c0.234,0.374 0.398,0.878 0.491,1.51c0.094,0.632 0.141,1.44 0.141,2.424c0,0.89 -0.047,1.651 -0.141,2.283c-0.093,0.632 -0.257,1.148 -0.491,1.546c-0.234,0.398 -0.504,0.702 -0.808,0.913c-0.305,0.211 -0.621,0.316 -0.949,0.316l-31.473,0l0,37.867c0,0.328 -0.094,0.644 -0.281,0.948c-0.188,0.305 -0.516,0.539 -0.984,0.703c-0.468,0.164 -1.077,0.304 -1.826,0.421c-0.75,0.118 -1.733,0.176 -2.951,0.176c-1.124,0 -2.084,-0.058 -2.881,-0.176c-0.796,-0.117 -1.428,-0.257 -1.896,-0.421c-0.469,-0.164 -0.797,-0.398 -0.984,-0.703c-0.187,-0.304 -0.281,-0.62 -0.281,-0.948l0,-84.164c0,-1.827 0.48,-3.103 1.44,-3.829c0.96,-0.726 1.979,-1.089 3.056,-1.089l40.888,0c0.328,0 0.644,0.094 0.948,0.281c0.305,0.188 0.574,0.492 0.808,0.914c0.234,0.421 0.398,0.971 0.492,1.65c0.094,0.68 0.141,1.464 0.141,2.354Z" style="fill:#333;fill-rule:nonzero;"/><path d="M742.534,179.562c0,0.375 -0.094,0.691 -0.281,0.949c-0.187,0.257 -0.492,0.48 -0.913,0.667c-0.422,0.187 -1.007,0.328 -1.757,0.422c-0.749,0.093 -1.709,0.14 -2.88,0.14c-1.124,0 -2.061,-0.047 -2.81,-0.14c-0.75,-0.094 -1.347,-0.235 -1.792,-0.422c-0.445,-0.187 -0.749,-0.41 -0.913,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-63.228c0,-0.328 0.082,-0.632 0.246,-0.913c0.164,-0.281 0.468,-0.516 0.913,-0.703c0.445,-0.187 1.042,-0.328 1.792,-0.422c0.749,-0.093 1.686,-0.14 2.81,-0.14c1.171,0 2.131,0.047 2.88,0.14c0.75,0.094 1.335,0.235 1.757,0.422c0.421,0.187 0.726,0.422 0.913,0.703c0.187,0.281 0.281,0.585 0.281,0.913l0,63.228Zm1.335,-84.585c0,2.716 -0.515,4.566 -1.546,5.55c-1.03,0.983 -2.927,1.475 -5.69,1.475c-2.717,0 -4.579,-0.48 -5.586,-1.44c-1.007,-0.96 -1.51,-2.775 -1.51,-5.445c0,-2.716 0.515,-4.566 1.546,-5.55c1.03,-0.983 2.927,-1.475 5.69,-1.475c2.717,0 4.578,0.48 5.585,1.44c1.007,0.96 1.511,2.775 1.511,5.445Z" style="fill:#333;fill-rule:nonzero;"/><path d="M800.915,120.479c0,1.03 -0.024,1.897 -0.07,2.599c-0.047,0.703 -0.141,1.253 -0.281,1.651c-0.141,0.398 -0.317,0.703 -0.527,0.913c-0.211,0.211 -0.504,0.317 -0.879,0.317c-0.374,0 -0.831,-0.106 -1.37,-0.317c-0.538,-0.21 -1.147,-0.421 -1.826,-0.632c-0.679,-0.211 -1.44,-0.41 -2.283,-0.597c-0.843,-0.187 -1.757,-0.281 -2.74,-0.281c-1.171,0 -2.319,0.234 -3.443,0.703c-1.124,0.468 -2.306,1.241 -3.548,2.318c-1.241,1.077 -2.54,2.506 -3.899,4.285c-1.358,1.78 -2.857,3.958 -4.496,6.534l0,41.59c0,0.375 -0.094,0.691 -0.281,0.949c-0.187,0.257 -0.492,0.48 -0.913,0.667c-0.422,0.187 -1.007,0.328 -1.756,0.422c-0.75,0.093 -1.71,0.14 -2.881,0.14c-1.124,0 -2.061,-0.047 -2.81,-0.14c-0.749,-0.094 -1.347,-0.235 -1.792,-0.422c-0.444,-0.187 -0.749,-0.41 -0.913,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-63.228c0,-0.375 0.071,-0.691 0.211,-0.949c0.141,-0.257 0.422,-0.491 0.843,-0.702c0.422,-0.211 0.96,-0.351 1.616,-0.422c0.656,-0.07 1.522,-0.105 2.599,-0.105c1.031,0 1.885,0.035 2.565,0.105c0.679,0.071 1.206,0.211 1.58,0.422c0.375,0.211 0.644,0.445 0.808,0.702c0.164,0.258 0.246,0.574 0.246,0.949l0,9.203c1.733,-2.529 3.361,-4.59 4.883,-6.182c1.522,-1.593 2.962,-2.846 4.32,-3.759c1.359,-0.913 2.705,-1.545 4.04,-1.897c1.335,-0.351 2.681,-0.527 4.04,-0.527c0.608,0 1.299,0.036 2.072,0.106c0.773,0.07 1.581,0.199 2.424,0.386c0.843,0.188 1.604,0.398 2.283,0.632c0.679,0.235 1.159,0.469 1.44,0.703c0.281,0.234 0.469,0.457 0.562,0.667c0.094,0.211 0.176,0.48 0.246,0.808c0.07,0.328 0.117,0.808 0.141,1.441c0.023,0.632 0.035,1.487 0.035,2.564Z" style="fill:#333;fill-rule:nonzero;"/><path d="M907.911,179.562c0,0.375 -0.093,0.691 -0.281,0.949c-0.187,0.257 -0.491,0.48 -0.913,0.667c-0.422,0.187 -1.007,0.328 -1.756,0.422c-0.75,0.093 -1.686,0.14 -2.811,0.14c-1.17,0 -2.131,-0.047 -2.88,-0.14c-0.749,-0.094 -1.346,-0.235 -1.791,-0.422c-0.445,-0.187 -0.761,-0.41 -0.949,-0.667c-0.187,-0.258 -0.281,-0.574 -0.281,-0.949l0,-38.429c0,-2.669 -0.234,-5.105 -0.702,-7.306c-0.469,-2.201 -1.218,-4.098 -2.248,-5.691c-1.031,-1.592 -2.342,-2.81 -3.935,-3.653c-1.592,-0.843 -3.466,-1.264 -5.62,-1.264c-2.67,0 -5.351,1.03 -8.044,3.091c-2.693,2.061 -5.655,5.082 -8.887,9.063l0,44.189c0,0.375 -0.094,0.691 -0.281,0.949c-0.188,0.257 -0.504,0.48 -0.949,0.667c-0.445,0.187 -1.042,0.328 -1.791,0.422c-0.749,0.093 -1.686,0.14 -2.81,0.14c-1.077,0 -2.002,-0.047 -2.775,-0.14c-0.773,-0.094 -1.382,-0.235 -1.827,-0.422c-0.445,-0.187 -0.749,-0.41 -0.913,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-38.429c0,-2.669 -0.258,-5.105 -0.773,-7.306c-0.515,-2.201 -1.288,-4.098 -2.318,-5.691c-1.031,-1.592 -2.33,-2.81 -3.899,-3.653c-1.569,-0.843 -3.431,-1.264 -5.585,-1.264c-2.67,0 -5.363,1.03 -8.08,3.091c-2.716,2.061 -5.667,5.082 -8.852,9.063l0,44.189c0,0.375 -0.093,0.691 -0.281,0.949c-0.187,0.257 -0.491,0.48 -0.913,0.667c-0.421,0.187 -1.007,0.328 -1.756,0.422c-0.75,0.093 -1.71,0.14 -2.881,0.14c-1.124,0 -2.06,-0.047 -2.81,-0.14c-0.749,-0.094 -1.346,-0.235 -1.791,-0.422c-0.445,-0.187 -0.75,-0.41 -0.914,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-63.228c0,-0.375 0.071,-0.691 0.211,-0.949c0.141,-0.257 0.422,-0.491 0.843,-0.702c0.422,-0.211 0.96,-0.351 1.616,-0.422c0.656,-0.07 1.522,-0.105 2.6,-0.105c1.03,0 1.885,0.035 2.564,0.105c0.679,0.071 1.206,0.211 1.581,0.422c0.374,0.211 0.643,0.445 0.807,0.702c0.164,0.258 0.246,0.574 0.246,0.949l0,8.36c3.56,-3.981 7.014,-6.897 10.363,-8.747c3.349,-1.85 6.732,-2.775 10.151,-2.775c2.623,0 4.977,0.305 7.061,0.914c2.084,0.609 3.922,1.463 5.515,2.564c1.592,1.101 2.951,2.412 4.075,3.934c1.124,1.522 2.06,3.22 2.81,5.094c2.107,-2.295 4.11,-4.239 6.006,-5.831c1.897,-1.593 3.724,-2.881 5.48,-3.864c1.757,-0.984 3.466,-1.698 5.129,-2.143c1.662,-0.445 3.337,-0.668 5.023,-0.668c4.075,0 7.494,0.715 10.257,2.143c2.763,1.429 5,3.337 6.709,5.726c1.71,2.388 2.927,5.187 3.653,8.395c0.726,3.208 1.089,6.592 1.089,10.152l0,39.974Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1016.52,116.193c0,0.328 -0.047,0.726 -0.141,1.195c-0.094,0.468 -0.257,1.053 -0.492,1.756l-18.617,60.067c-0.14,0.515 -0.363,0.937 -0.667,1.265c-0.305,0.327 -0.726,0.585 -1.265,0.772c-0.538,0.188 -1.276,0.316 -2.213,0.387c-0.937,0.07 -2.107,0.105 -3.513,0.105c-1.451,0 -2.669,-0.047 -3.653,-0.14c-0.983,-0.094 -1.768,-0.235 -2.353,-0.422c-0.586,-0.187 -1.019,-0.445 -1.3,-0.773c-0.281,-0.328 -0.492,-0.726 -0.632,-1.194l-13.278,-45.876l-0.141,-0.632l-0.14,0.632l-12.295,45.876c-0.14,0.515 -0.363,0.937 -0.667,1.265c-0.304,0.327 -0.761,0.585 -1.37,0.772c-0.609,0.188 -1.393,0.316 -2.353,0.387c-0.961,0.07 -2.143,0.105 -3.548,0.105c-1.452,0 -2.635,-0.047 -3.548,-0.14c-0.913,-0.094 -1.663,-0.235 -2.248,-0.422c-0.586,-0.187 -1.019,-0.445 -1.3,-0.773c-0.281,-0.328 -0.492,-0.726 -0.632,-1.194l-18.477,-60.067c-0.234,-0.703 -0.398,-1.288 -0.492,-1.756c-0.093,-0.469 -0.14,-0.867 -0.14,-1.195c0,-0.421 0.093,-0.761 0.281,-1.018c0.187,-0.258 0.503,-0.469 0.948,-0.633c0.445,-0.164 1.042,-0.269 1.792,-0.316c0.749,-0.047 1.662,-0.07 2.74,-0.07c1.311,0 2.365,0.035 3.161,0.105c0.796,0.071 1.405,0.188 1.827,0.352c0.421,0.164 0.726,0.398 0.913,0.702c0.187,0.305 0.351,0.668 0.492,1.089l15.245,52.128l0.14,0.633l0.141,-0.633l13.98,-52.128c0.094,-0.421 0.246,-0.784 0.457,-1.089c0.211,-0.304 0.527,-0.538 0.948,-0.702c0.422,-0.164 0.996,-0.281 1.722,-0.352c0.726,-0.07 1.674,-0.105 2.845,-0.105c1.124,0 2.049,0.035 2.775,0.105c0.726,0.071 1.3,0.188 1.721,0.352c0.422,0.164 0.726,0.386 0.913,0.667c0.188,0.281 0.328,0.609 0.422,0.984l15.104,52.268l0.141,0.633l0.07,-0.633l15.035,-52.128c0.093,-0.421 0.245,-0.784 0.456,-1.089c0.211,-0.304 0.539,-0.538 0.984,-0.702c0.445,-0.164 1.054,-0.281 1.826,-0.352c0.773,-0.07 1.768,-0.105 2.986,-0.105c1.124,0 2.026,0.023 2.705,0.07c0.679,0.047 1.218,0.164 1.616,0.351c0.398,0.188 0.679,0.399 0.843,0.633c0.164,0.234 0.246,0.562 0.246,0.983Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1076.94,179.632c0,0.563 -0.187,0.984 -0.562,1.265c-0.375,0.281 -0.89,0.492 -1.546,0.632c-0.655,0.141 -1.616,0.211 -2.88,0.211c-1.218,0 -2.19,-0.07 -2.916,-0.211c-0.726,-0.14 -1.252,-0.351 -1.58,-0.632c-0.328,-0.281 -0.492,-0.702 -0.492,-1.265l0,-6.322c-2.763,2.95 -5.843,5.245 -9.238,6.885c-3.396,1.639 -6.991,2.458 -10.784,2.458c-3.326,0 -6.335,-0.433 -9.028,-1.299c-2.693,-0.867 -4.988,-2.12 -6.885,-3.759c-1.897,-1.639 -3.372,-3.653 -4.426,-6.042c-1.054,-2.388 -1.581,-5.105 -1.581,-8.149c0,-3.56 0.726,-6.651 2.178,-9.274c1.452,-2.622 3.536,-4.8 6.253,-6.533c2.716,-1.733 6.042,-3.033 9.976,-3.899c3.934,-0.867 8.36,-1.3 13.278,-1.3l8.711,0l0,-4.918c0,-2.435 -0.257,-4.59 -0.772,-6.463c-0.516,-1.874 -1.347,-3.431 -2.495,-4.672c-1.147,-1.241 -2.634,-2.178 -4.461,-2.81c-1.826,-0.632 -4.074,-0.949 -6.744,-0.949c-2.857,0 -5.421,0.34 -7.693,1.019c-2.271,0.679 -4.262,1.429 -5.971,2.248c-1.71,0.82 -3.138,1.569 -4.286,2.248c-1.147,0.679 -2.002,1.019 -2.564,1.019c-0.375,0 -0.703,-0.094 -0.984,-0.281c-0.281,-0.187 -0.527,-0.468 -0.737,-0.843c-0.211,-0.375 -0.363,-0.855 -0.457,-1.44c-0.094,-0.586 -0.14,-1.23 -0.14,-1.932c0,-1.171 0.081,-2.096 0.245,-2.775c0.164,-0.679 0.562,-1.323 1.195,-1.932c0.632,-0.609 1.721,-1.323 3.267,-2.143c1.545,-0.82 3.325,-1.569 5.339,-2.248c2.014,-0.679 4.215,-1.241 6.604,-1.686c2.388,-0.445 4.8,-0.668 7.236,-0.668c4.543,0 8.407,0.516 11.592,1.546c3.185,1.03 5.761,2.541 7.728,4.531c1.967,1.991 3.395,4.461 4.285,7.412c0.89,2.951 1.335,6.393 1.335,10.327l0,42.644Zm-11.522,-28.874l-9.905,0c-3.185,0 -5.949,0.269 -8.29,0.808c-2.342,0.539 -4.286,1.335 -5.832,2.389c-1.545,1.054 -2.681,2.318 -3.407,3.793c-0.726,1.476 -1.089,3.174 -1.089,5.094c0,3.278 1.042,5.889 3.127,7.833c2.084,1.944 4.999,2.916 8.746,2.916c3.044,0 5.866,-0.773 8.466,-2.319c2.599,-1.545 5.327,-3.91 8.184,-7.095l0,-13.419Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1135.18,120.479c0,1.03 -0.023,1.897 -0.07,2.599c-0.047,0.703 -0.14,1.253 -0.281,1.651c-0.14,0.398 -0.316,0.703 -0.527,0.913c-0.211,0.211 -0.503,0.317 -0.878,0.317c-0.375,0 -0.831,-0.106 -1.37,-0.317c-0.539,-0.21 -1.147,-0.421 -1.827,-0.632c-0.679,-0.211 -1.44,-0.41 -2.283,-0.597c-0.843,-0.187 -1.756,-0.281 -2.74,-0.281c-1.171,0 -2.318,0.234 -3.442,0.703c-1.124,0.468 -2.307,1.241 -3.548,2.318c-1.241,1.077 -2.541,2.506 -3.899,4.285c-1.358,1.78 -2.857,3.958 -4.496,6.534l0,41.59c0,0.375 -0.094,0.691 -0.281,0.949c-0.188,0.257 -0.492,0.48 -0.914,0.667c-0.421,0.187 -1.007,0.328 -1.756,0.422c-0.749,0.093 -1.709,0.14 -2.88,0.14c-1.124,0 -2.061,-0.047 -2.811,-0.14c-0.749,-0.094 -1.346,-0.235 -1.791,-0.422c-0.445,-0.187 -0.749,-0.41 -0.913,-0.667c-0.164,-0.258 -0.246,-0.574 -0.246,-0.949l0,-63.228c0,-0.375 0.07,-0.691 0.211,-0.949c0.14,-0.257 0.421,-0.491 0.843,-0.702c0.421,-0.211 0.96,-0.351 1.615,-0.422c0.656,-0.07 1.523,-0.105 2.6,-0.105c1.03,0 1.885,0.035 2.564,0.105c0.679,0.071 1.206,0.211 1.581,0.422c0.375,0.211 0.644,0.445 0.808,0.702c0.164,0.258 0.246,0.574 0.246,0.949l0,9.203c1.733,-2.529 3.36,-4.59 4.882,-6.182c1.522,-1.593 2.963,-2.846 4.321,-3.759c1.358,-0.913 2.705,-1.545 4.039,-1.897c1.335,-0.351 2.682,-0.527 4.04,-0.527c0.609,0 1.3,0.036 2.073,0.106c0.772,0.07 1.58,0.199 2.423,0.386c0.843,0.188 1.604,0.398 2.284,0.632c0.679,0.235 1.159,0.469 1.44,0.703c0.281,0.234 0.468,0.457 0.562,0.667c0.093,0.211 0.175,0.48 0.246,0.808c0.07,0.328 0.117,0.808 0.14,1.441c0.024,0.632 0.035,1.487 0.035,2.564Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1200.45,145.208c0,1.827 -0.459,3.126 -1.376,3.899c-0.917,0.773 -1.964,1.159 -3.141,1.159l-41.64,0c0,3.513 0.353,6.675 1.059,9.485c0.706,2.81 1.882,5.222 3.53,7.236c1.647,2.014 3.789,3.559 6.424,4.637c2.636,1.077 5.86,1.615 9.672,1.615c3.012,0 5.694,-0.245 8.047,-0.737c2.354,-0.492 4.389,-1.042 6.107,-1.651c1.718,-0.609 3.13,-1.159 4.236,-1.651c1.106,-0.492 1.942,-0.738 2.507,-0.738c0.329,0 0.623,0.082 0.882,0.246c0.259,0.164 0.458,0.41 0.6,0.738c0.141,0.328 0.247,0.784 0.317,1.37c0.071,0.585 0.106,1.299 0.106,2.142c0,0.609 -0.023,1.136 -0.07,1.581c-0.047,0.445 -0.105,0.843 -0.175,1.194c-0.071,0.352 -0.188,0.668 -0.352,0.949c-0.164,0.281 -0.374,0.55 -0.632,0.808c-0.258,0.257 -1.019,0.679 -2.283,1.264c-1.265,0.586 -2.904,1.16 -4.918,1.722c-2.014,0.562 -4.344,1.065 -6.99,1.51c-2.647,0.445 -5.468,0.667 -8.466,0.667c-5.199,0 -9.753,-0.726 -13.664,-2.177c-3.911,-1.452 -7.201,-3.607 -9.871,-6.464c-2.67,-2.857 -4.683,-6.44 -6.042,-10.749c-1.358,-4.309 -2.037,-9.32 -2.037,-15.034c0,-5.433 0.702,-10.316 2.108,-14.648c1.405,-4.332 3.43,-8.009 6.077,-11.03c2.646,-3.021 5.842,-5.339 9.589,-6.955c3.747,-1.616 7.939,-2.424 12.576,-2.424c4.964,0 9.191,0.797 12.68,2.389c3.49,1.592 6.358,3.735 8.606,6.428c2.249,2.693 3.9,5.855 4.953,9.485c1.054,3.629 1.581,7.505 1.581,11.627l0,2.107Zm-11.662,-3.442c0.14,-6.089 -1.214,-10.866 -4.065,-14.332c-2.85,-3.466 -7.079,-5.199 -12.687,-5.199c-2.875,0 -5.396,0.539 -7.564,1.616c-2.167,1.077 -3.982,2.506 -5.443,4.285c-1.461,1.78 -2.592,3.853 -3.393,6.218c-0.801,2.365 -1.248,4.836 -1.343,7.412l34.495,0Z" style="fill:#333;fill-rule:nonzero;"/><path d="M379.752,276.089c0,0.493 -0.016,0.924 -0.047,1.294c-0.03,0.369 -0.084,0.693 -0.161,0.97c-0.077,0.277 -0.177,0.524 -0.301,0.739c-0.123,0.216 -0.338,0.478 -0.646,0.786c-0.308,0.308 -0.955,0.778 -1.941,1.409c-0.986,0.631 -2.21,1.247 -3.673,1.848c-1.463,0.601 -3.142,1.109 -5.036,1.525c-1.894,0.416 -3.966,0.623 -6.214,0.623c-3.881,0 -7.385,-0.646 -10.511,-1.94c-3.127,-1.294 -5.791,-3.203 -7.993,-5.729c-2.203,-2.526 -3.897,-5.645 -5.083,-9.356c-1.185,-3.712 -1.778,-7.985 -1.778,-12.821c0,-4.959 0.639,-9.379 1.917,-13.26c1.278,-3.881 3.072,-7.169 5.383,-9.865c2.31,-2.695 5.074,-4.751 8.293,-6.168c3.219,-1.417 6.784,-2.125 10.696,-2.125c1.725,0 3.403,0.162 5.036,0.485c1.632,0.324 3.142,0.732 4.528,1.225c1.386,0.492 2.618,1.062 3.696,1.709c1.078,0.647 1.825,1.178 2.241,1.594c0.416,0.416 0.685,0.732 0.808,0.947c0.123,0.216 0.224,0.47 0.301,0.763c0.077,0.292 0.138,0.639 0.184,1.039c0.047,0.4 0.07,0.878 0.07,1.432c0,0.616 -0.031,1.14 -0.093,1.571c-0.062,0.431 -0.155,0.793 -0.279,1.086c-0.124,0.293 -0.271,0.508 -0.441,0.647c-0.171,0.138 -0.38,0.208 -0.628,0.208c-0.433,0 -1.036,-0.301 -1.811,-0.901c-0.774,-0.601 -1.773,-1.263 -2.996,-1.987c-1.223,-0.724 -2.71,-1.386 -4.459,-1.987c-1.749,-0.6 -3.847,-0.901 -6.294,-0.901c-2.663,0 -5.086,0.532 -7.269,1.594c-2.183,1.063 -4.049,2.626 -5.597,4.69c-1.549,2.064 -2.748,4.582 -3.6,7.554c-0.852,2.972 -1.278,6.368 -1.278,10.188c0,3.788 0.411,7.138 1.231,10.049c0.821,2.91 1.998,5.344 3.53,7.3c1.533,1.956 3.415,3.434 5.644,4.435c2.23,1.001 4.753,1.502 7.571,1.502c2.384,0 4.467,-0.293 6.247,-0.878c1.781,-0.585 3.298,-1.24 4.552,-1.964c1.254,-0.724 2.283,-1.378 3.089,-1.963c0.805,-0.586 1.44,-0.878 1.904,-0.878c0.217,0 0.403,0.046 0.558,0.138c0.154,0.093 0.278,0.27 0.371,0.532c0.093,0.262 0.163,0.623 0.209,1.085c0.046,0.462 0.07,1.048 0.07,1.756Z" style="fill:#333;fill-rule:nonzero;"/><path d="M428.079,262.136c0,3.388 -0.446,6.507 -1.339,9.356c-0.894,2.849 -2.226,5.306 -3.997,7.369c-1.771,2.064 -3.989,3.673 -6.653,4.828c-2.664,1.156 -5.752,1.733 -9.264,1.733c-3.419,0 -6.399,-0.508 -8.94,-1.525c-2.541,-1.016 -4.659,-2.495 -6.353,-4.435c-1.694,-1.941 -2.957,-4.297 -3.788,-7.069c-0.832,-2.772 -1.248,-5.914 -1.248,-9.425c0,-3.388 0.439,-6.507 1.317,-9.356c0.878,-2.849 2.202,-5.306 3.973,-7.37c1.772,-2.063 3.982,-3.665 6.63,-4.805c2.649,-1.139 5.745,-1.709 9.287,-1.709c3.419,0 6.399,0.508 8.94,1.525c2.541,1.016 4.659,2.494 6.353,4.435c1.694,1.94 2.965,4.297 3.812,7.069c0.847,2.772 1.27,5.898 1.27,9.379Zm-7.9,0.508c0,-2.248 -0.21,-4.374 -0.63,-6.376c-0.419,-2.002 -1.111,-3.757 -2.074,-5.267c-0.964,-1.509 -2.269,-2.703 -3.917,-3.58c-1.647,-0.878 -3.698,-1.317 -6.153,-1.317c-2.269,0 -4.219,0.4 -5.851,1.201c-1.632,0.801 -2.976,1.933 -4.033,3.396c-1.056,1.463 -1.841,3.196 -2.354,5.198c-0.513,2.002 -0.769,4.189 -0.769,6.56c0,2.28 0.21,4.42 0.629,6.423c0.42,2.002 1.119,3.75 2.098,5.244c0.979,1.493 2.292,2.679 3.939,3.557c1.648,0.878 3.699,1.317 6.154,1.317c2.238,0 4.181,-0.401 5.828,-1.201c1.647,-0.801 2.999,-1.925 4.056,-3.373c1.056,-1.448 1.833,-3.173 2.331,-5.175c0.497,-2.002 0.746,-4.204 0.746,-6.607Z" style="fill:#333;fill-rule:nonzero;"/><path d="M500.987,283.389c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.493,0.062 -1.109,0.092 -1.848,0.092c-0.77,0 -1.401,-0.03 -1.894,-0.092c-0.493,-0.062 -0.886,-0.154 -1.178,-0.277c-0.293,-0.123 -0.501,-0.27 -0.624,-0.439c-0.123,-0.17 -0.185,-0.377 -0.185,-0.624l0,-25.273c0,-1.755 -0.154,-3.357 -0.462,-4.805c-0.308,-1.447 -0.801,-2.695 -1.478,-3.742c-0.678,-1.047 -1.54,-1.848 -2.588,-2.403c-1.047,-0.554 -2.279,-0.831 -3.696,-0.831c-1.756,0 -3.519,0.677 -5.29,2.033c-1.771,1.355 -3.719,3.342 -5.845,5.96l0,29.061c0,0.247 -0.061,0.454 -0.184,0.624c-0.124,0.169 -0.332,0.316 -0.624,0.439c-0.293,0.123 -0.685,0.215 -1.178,0.277c-0.493,0.062 -1.109,0.092 -1.848,0.092c-0.709,0 -1.317,-0.03 -1.825,-0.092c-0.509,-0.062 -0.909,-0.154 -1.202,-0.277c-0.292,-0.123 -0.492,-0.27 -0.6,-0.439c-0.108,-0.17 -0.162,-0.377 -0.162,-0.624l0,-25.273c0,-1.755 -0.169,-3.357 -0.508,-4.805c-0.339,-1.447 -0.847,-2.695 -1.525,-3.742c-0.678,-1.047 -1.532,-1.848 -2.564,-2.403c-1.032,-0.554 -2.256,-0.831 -3.673,-0.831c-1.756,0 -3.527,0.677 -5.314,2.033c-1.786,1.355 -3.727,3.342 -5.821,5.96l0,29.061c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.6,0.439c-0.278,0.123 -0.663,0.215 -1.156,0.277c-0.492,0.062 -1.124,0.092 -1.894,0.092c-0.739,0 -1.355,-0.03 -1.848,-0.092c-0.493,-0.062 -0.885,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.27 -0.601,-0.439c-0.108,-0.17 -0.161,-0.377 -0.161,-0.624l0,-41.582c0,-0.246 0.046,-0.454 0.138,-0.624c0.093,-0.169 0.277,-0.323 0.555,-0.462c0.277,-0.138 0.631,-0.231 1.062,-0.277c0.432,-0.046 1.001,-0.069 1.71,-0.069c0.677,0 1.24,0.023 1.686,0.069c0.447,0.046 0.793,0.139 1.04,0.277c0.246,0.139 0.423,0.293 0.531,0.462c0.108,0.17 0.162,0.378 0.162,0.624l0,5.498c2.341,-2.618 4.612,-4.535 6.815,-5.752c2.202,-1.217 4.427,-1.825 6.676,-1.825c1.725,0 3.273,0.2 4.643,0.601c1.371,0.4 2.58,0.962 3.627,1.686c1.047,0.724 1.941,1.586 2.68,2.587c0.739,1.001 1.355,2.118 1.848,3.35c1.386,-1.509 2.703,-2.788 3.95,-3.835c1.248,-1.047 2.449,-1.894 3.604,-2.541c1.155,-0.647 2.279,-1.117 3.373,-1.409c1.093,-0.293 2.194,-0.439 3.303,-0.439c2.68,0 4.929,0.47 6.746,1.409c1.817,0.939 3.288,2.195 4.412,3.766c1.124,1.57 1.925,3.411 2.403,5.521c0.477,2.11 0.716,4.335 0.716,6.676l0,26.289Z" style="fill:#333;fill-rule:nonzero;"/><path d="M576.574,283.389c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.492,0.062 -1.108,0.092 -1.848,0.092c-0.77,0 -1.401,-0.03 -1.894,-0.092c-0.493,-0.062 -0.886,-0.154 -1.178,-0.277c-0.293,-0.123 -0.501,-0.27 -0.624,-0.439c-0.123,-0.17 -0.185,-0.377 -0.185,-0.624l0,-25.273c0,-1.755 -0.154,-3.357 -0.462,-4.805c-0.308,-1.447 -0.801,-2.695 -1.478,-3.742c-0.678,-1.047 -1.54,-1.848 -2.588,-2.403c-1.047,-0.554 -2.279,-0.831 -3.696,-0.831c-1.755,0 -3.519,0.677 -5.29,2.033c-1.771,1.355 -3.719,3.342 -5.844,5.96l0,29.061c0,0.247 -0.062,0.454 -0.185,0.624c-0.124,0.169 -0.331,0.316 -0.624,0.439c-0.293,0.123 -0.685,0.215 -1.178,0.277c-0.493,0.062 -1.109,0.092 -1.848,0.092c-0.709,0 -1.317,-0.03 -1.825,-0.092c-0.509,-0.062 -0.909,-0.154 -1.202,-0.277c-0.292,-0.123 -0.492,-0.27 -0.6,-0.439c-0.108,-0.17 -0.162,-0.377 -0.162,-0.624l0,-25.273c0,-1.755 -0.169,-3.357 -0.508,-4.805c-0.339,-1.447 -0.847,-2.695 -1.525,-3.742c-0.677,-1.047 -1.532,-1.848 -2.564,-2.403c-1.032,-0.554 -2.256,-0.831 -3.673,-0.831c-1.756,0 -3.527,0.677 -5.313,2.033c-1.787,1.355 -3.727,3.342 -5.822,5.96l0,29.061c0,0.247 -0.061,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.6,0.439c-0.278,0.123 -0.663,0.215 -1.155,0.277c-0.493,0.062 -1.125,0.092 -1.895,0.092c-0.739,0 -1.355,-0.03 -1.848,-0.092c-0.493,-0.062 -0.885,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.27 -0.601,-0.439c-0.107,-0.17 -0.161,-0.377 -0.161,-0.624l0,-41.582c0,-0.246 0.046,-0.454 0.138,-0.624c0.093,-0.169 0.278,-0.323 0.555,-0.462c0.277,-0.138 0.631,-0.231 1.062,-0.277c0.432,-0.046 1.001,-0.069 1.71,-0.069c0.678,0 1.24,0.023 1.686,0.069c0.447,0.046 0.793,0.139 1.04,0.277c0.246,0.139 0.423,0.293 0.531,0.462c0.108,0.17 0.162,0.378 0.162,0.624l0,5.498c2.341,-2.618 4.612,-4.535 6.815,-5.752c2.202,-1.217 4.427,-1.825 6.676,-1.825c1.725,0 3.273,0.2 4.643,0.601c1.371,0.4 2.58,0.962 3.627,1.686c1.047,0.724 1.941,1.586 2.68,2.587c0.739,1.001 1.355,2.118 1.848,3.35c1.386,-1.509 2.703,-2.788 3.95,-3.835c1.248,-1.047 2.449,-1.894 3.604,-2.541c1.155,-0.647 2.279,-1.117 3.373,-1.409c1.093,-0.293 2.195,-0.439 3.303,-0.439c2.68,0 4.929,0.47 6.746,1.409c1.817,0.939 3.288,2.195 4.412,3.766c1.125,1.57 1.925,3.411 2.403,5.521c0.477,2.11 0.716,4.335 0.716,6.676l0,26.289Z" style="fill:#333;fill-rule:nonzero;"/><path d="M626.103,283.389c0,0.247 -0.054,0.454 -0.162,0.624c-0.108,0.169 -0.3,0.316 -0.577,0.439c-0.278,0.123 -0.639,0.215 -1.086,0.277c-0.447,0.062 -0.993,0.092 -1.64,0.092c-0.709,0 -1.286,-0.03 -1.733,-0.092c-0.447,-0.062 -0.801,-0.154 -1.063,-0.277c-0.261,-0.123 -0.438,-0.27 -0.531,-0.439c-0.092,-0.17 -0.138,-0.377 -0.138,-0.624l0,-5.498c-2.372,2.618 -4.713,4.528 -7.023,5.729c-2.31,1.201 -4.651,1.802 -7.023,1.802c-2.772,0 -5.105,-0.462 -7,-1.386c-1.894,-0.924 -3.426,-2.179 -4.597,-3.766c-1.17,-1.586 -2.01,-3.434 -2.518,-5.544c-0.508,-2.11 -0.762,-4.674 -0.762,-7.693l0,-25.226c0,-0.246 0.054,-0.454 0.162,-0.624c0.107,-0.169 0.315,-0.323 0.623,-0.462c0.308,-0.138 0.709,-0.231 1.202,-0.277c0.492,-0.046 1.108,-0.069 1.848,-0.069c0.739,0 1.355,0.023 1.848,0.069c0.493,0.046 0.885,0.139 1.178,0.277c0.292,0.139 0.5,0.293 0.624,0.462c0.123,0.17 0.184,0.378 0.184,0.624l0,24.21c0,2.433 0.178,4.382 0.532,5.845c0.354,1.463 0.893,2.71 1.617,3.742c0.724,1.032 1.64,1.833 2.749,2.403c1.109,0.569 2.402,0.854 3.881,0.854c1.91,0 3.812,-0.677 5.706,-2.033c1.894,-1.355 3.904,-3.342 6.029,-5.96l0,-29.061c0,-0.246 0.054,-0.454 0.162,-0.624c0.108,-0.169 0.316,-0.323 0.624,-0.462c0.308,-0.138 0.7,-0.231 1.178,-0.277c0.477,-0.046 1.101,-0.069 1.871,-0.069c0.739,0 1.355,0.023 1.848,0.069c0.493,0.046 0.878,0.139 1.155,0.277c0.277,0.139 0.485,0.293 0.624,0.462c0.139,0.17 0.208,0.378 0.208,0.624l0,41.582Z" style="fill:#333;fill-rule:nonzero;"/><path d="M676.001,283.389c0,0.247 -0.061,0.454 -0.184,0.624c-0.124,0.169 -0.324,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.493,0.062 -1.109,0.092 -1.848,0.092c-0.77,0 -1.402,-0.03 -1.894,-0.092c-0.493,-0.062 -0.878,-0.154 -1.155,-0.277c-0.278,-0.123 -0.478,-0.27 -0.601,-0.439c-0.123,-0.17 -0.185,-0.377 -0.185,-0.624l0,-24.349c0,-2.371 -0.185,-4.281 -0.554,-5.729c-0.37,-1.447 -0.909,-2.695 -1.617,-3.742c-0.709,-1.047 -1.625,-1.848 -2.749,-2.403c-1.125,-0.554 -2.426,-0.831 -3.905,-0.831c-1.909,0 -3.819,0.677 -5.729,2.033c-1.909,1.355 -3.911,3.342 -6.006,5.96l0,29.061c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.6,0.439c-0.278,0.123 -0.663,0.215 -1.155,0.277c-0.493,0.062 -1.125,0.092 -1.895,0.092c-0.739,0 -1.355,-0.03 -1.848,-0.092c-0.493,-0.062 -0.885,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.27 -0.601,-0.439c-0.107,-0.17 -0.161,-0.377 -0.161,-0.624l0,-41.582c0,-0.246 0.046,-0.454 0.138,-0.624c0.093,-0.169 0.277,-0.323 0.555,-0.462c0.277,-0.138 0.631,-0.231 1.062,-0.277c0.432,-0.046 1.001,-0.069 1.71,-0.069c0.677,0 1.24,0.023 1.686,0.069c0.447,0.046 0.793,0.139 1.04,0.277c0.246,0.139 0.423,0.293 0.531,0.462c0.108,0.17 0.162,0.378 0.162,0.624l0,5.498c2.341,-2.618 4.674,-4.535 6.999,-5.752c2.326,-1.217 4.675,-1.825 7.046,-1.825c2.772,0 5.106,0.47 7,1.409c1.894,0.939 3.427,2.195 4.597,3.766c1.171,1.57 2.01,3.411 2.518,5.521c0.508,2.11 0.762,4.643 0.762,7.6l0,25.365Z" style="fill:#333;fill-rule:nonzero;"/><path d="M697.532,283.389c0,0.247 -0.062,0.454 -0.185,0.624c-0.123,0.169 -0.323,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.493,0.062 -1.124,0.092 -1.894,0.092c-0.739,0 -1.355,-0.03 -1.848,-0.092c-0.493,-0.062 -0.886,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.27 -0.601,-0.439c-0.108,-0.17 -0.162,-0.377 -0.162,-0.624l0,-41.582c0,-0.216 0.054,-0.416 0.162,-0.601c0.108,-0.184 0.308,-0.338 0.601,-0.462c0.292,-0.123 0.685,-0.215 1.178,-0.277c0.493,-0.061 1.109,-0.092 1.848,-0.092c0.77,0 1.401,0.031 1.894,0.092c0.493,0.062 0.878,0.154 1.155,0.277c0.278,0.124 0.478,0.278 0.601,0.462c0.123,0.185 0.185,0.385 0.185,0.601l0,41.582Zm0.878,-55.628c0,1.787 -0.339,3.004 -1.017,3.65c-0.677,0.647 -1.925,0.971 -3.742,0.971c-1.787,0 -3.011,-0.316 -3.673,-0.947c-0.663,-0.632 -0.994,-1.825 -0.994,-3.581c0,-1.787 0.339,-3.003 1.017,-3.65c0.677,-0.647 1.925,-0.97 3.742,-0.97c1.787,0 3.011,0.315 3.673,0.947c0.663,0.631 0.994,1.825 0.994,3.58Z" style="fill:#333;fill-rule:nonzero;"/><path d="M733.246,280.34c0,0.893 -0.061,1.601 -0.185,2.125c-0.123,0.524 -0.308,0.909 -0.554,1.155c-0.246,0.247 -0.616,0.478 -1.109,0.693c-0.493,0.216 -1.055,0.393 -1.686,0.532c-0.632,0.138 -1.302,0.254 -2.01,0.346c-0.708,0.092 -1.417,0.139 -2.125,0.139c-2.156,0 -4.005,-0.285 -5.545,-0.855c-1.54,-0.57 -2.803,-1.432 -3.788,-2.587c-0.986,-1.155 -1.702,-2.619 -2.149,-4.39c-0.446,-1.771 -0.67,-3.858 -0.67,-6.26l0,-24.303l-5.821,0c-0.462,0 -0.832,-0.246 -1.109,-0.739c-0.277,-0.493 -0.416,-1.293 -0.416,-2.402c0,-0.586 0.039,-1.078 0.116,-1.479c0.077,-0.4 0.177,-0.731 0.3,-0.993c0.123,-0.262 0.285,-0.447 0.485,-0.555c0.2,-0.107 0.424,-0.161 0.67,-0.161l5.775,0l0,-9.888c0,-0.215 0.054,-0.415 0.162,-0.6c0.108,-0.185 0.308,-0.347 0.601,-0.485c0.292,-0.139 0.685,-0.239 1.178,-0.301c0.493,-0.061 1.109,-0.092 1.848,-0.092c0.77,0 1.401,0.031 1.894,0.092c0.493,0.062 0.878,0.162 1.155,0.301c0.278,0.138 0.478,0.3 0.601,0.485c0.123,0.185 0.185,0.385 0.185,0.6l0,9.888l10.673,0c0.246,0 0.462,0.054 0.646,0.161c0.185,0.108 0.347,0.293 0.486,0.555c0.138,0.262 0.238,0.593 0.3,0.993c0.061,0.401 0.092,0.893 0.092,1.479c0,1.109 -0.138,1.909 -0.416,2.402c-0.277,0.493 -0.646,0.739 -1.108,0.739l-10.673,0l0,23.194c0,2.865 0.423,5.028 1.27,6.491c0.847,1.464 2.364,2.195 4.551,2.195c0.709,0 1.34,-0.069 1.895,-0.208c0.554,-0.138 1.047,-0.285 1.478,-0.439c0.431,-0.154 0.801,-0.3 1.109,-0.439c0.308,-0.138 0.585,-0.208 0.832,-0.208c0.154,0 0.3,0.039 0.439,0.116c0.138,0.077 0.246,0.223 0.323,0.439c0.077,0.215 0.146,0.508 0.208,0.878c0.061,0.369 0.092,0.831 0.092,1.386Z" style="fill:#333;fill-rule:nonzero;"/><path d="M762.261,284.544l-5.544,15.293c-0.185,0.493 -0.654,0.87 -1.409,1.132c-0.755,0.262 -1.902,0.393 -3.442,0.393c-0.801,0 -1.448,-0.039 -1.941,-0.116c-0.493,-0.077 -0.87,-0.208 -1.132,-0.392c-0.261,-0.185 -0.408,-0.432 -0.439,-0.74c-0.03,-0.308 0.047,-0.677 0.231,-1.108l5.73,-14.462c-0.278,-0.123 -0.539,-0.323 -0.786,-0.6c-0.246,-0.278 -0.416,-0.57 -0.508,-0.878l-14.831,-39.734c-0.247,-0.647 -0.37,-1.155 -0.37,-1.525c0,-0.37 0.123,-0.662 0.37,-0.878c0.246,-0.215 0.647,-0.362 1.201,-0.439c0.555,-0.077 1.294,-0.115 2.218,-0.115c0.924,0 1.648,0.023 2.171,0.069c0.524,0.046 0.94,0.131 1.248,0.254c0.308,0.123 0.531,0.3 0.67,0.531c0.138,0.231 0.285,0.547 0.439,0.948l11.874,33.358l0.138,0l11.459,-33.543c0.184,-0.585 0.408,-0.963 0.669,-1.132c0.262,-0.17 0.655,-0.293 1.179,-0.37c0.523,-0.077 1.278,-0.115 2.264,-0.115c0.862,0 1.57,0.038 2.125,0.115c0.554,0.077 0.962,0.224 1.224,0.439c0.262,0.216 0.393,0.508 0.393,0.878c0,0.37 -0.092,0.832 -0.277,1.386l-14.924,41.351Z" style="fill:#333;fill-rule:nonzero;"/><path d="M840.528,267.773c0,2.803 -0.516,5.298 -1.548,7.485c-1.031,2.186 -2.464,4.042 -4.296,5.567c-1.833,1.525 -3.989,2.672 -6.469,3.442c-2.479,0.77 -5.151,1.155 -8.016,1.155c-2.002,0 -3.858,-0.169 -5.567,-0.508c-1.71,-0.339 -3.234,-0.755 -4.574,-1.248c-1.34,-0.492 -2.464,-1.001 -3.373,-1.524c-0.909,-0.524 -1.54,-0.971 -1.894,-1.34c-0.355,-0.37 -0.616,-0.84 -0.786,-1.409c-0.169,-0.57 -0.254,-1.333 -0.254,-2.287c0,-0.678 0.031,-1.24 0.093,-1.687c0.061,-0.446 0.154,-0.808 0.277,-1.086c0.123,-0.277 0.277,-0.469 0.462,-0.577c0.185,-0.108 0.4,-0.162 0.647,-0.162c0.431,0 1.039,0.262 1.825,0.786c0.785,0.523 1.794,1.093 3.026,1.709c1.232,0.616 2.718,1.194 4.458,1.733c1.741,0.539 3.75,0.808 6.03,0.808c1.725,0 3.303,-0.231 4.736,-0.693c1.432,-0.462 2.664,-1.116 3.696,-1.963c1.032,-0.847 1.825,-1.887 2.379,-3.119c0.555,-1.232 0.832,-2.634 0.832,-4.204c0,-1.695 -0.385,-3.142 -1.155,-4.343c-0.77,-1.202 -1.787,-2.257 -3.05,-3.165c-1.262,-0.909 -2.702,-1.741 -4.32,-2.495c-1.617,-0.755 -3.272,-1.525 -4.966,-2.31c-1.694,-0.786 -3.342,-1.656 -4.944,-2.611c-1.602,-0.955 -3.034,-2.079 -4.297,-3.373c-1.263,-1.293 -2.287,-2.81 -3.072,-4.551c-0.786,-1.74 -1.178,-3.827 -1.178,-6.26c0,-2.495 0.454,-4.72 1.363,-6.676c0.908,-1.956 2.171,-3.596 3.788,-4.921c1.617,-1.324 3.542,-2.333 5.775,-3.026c2.234,-0.693 4.644,-1.04 7.231,-1.04c1.325,0 2.657,0.116 3.997,0.347c1.34,0.231 2.602,0.539 3.788,0.924c1.186,0.385 2.241,0.816 3.165,1.294c0.924,0.477 1.532,0.862 1.825,1.155c0.293,0.292 0.485,0.523 0.578,0.693c0.092,0.169 0.169,0.385 0.231,0.647c0.061,0.261 0.107,0.577 0.138,0.947c0.031,0.369 0.046,0.847 0.046,1.432c0,0.554 -0.023,1.047 -0.069,1.479c-0.046,0.431 -0.115,0.793 -0.208,1.085c-0.092,0.293 -0.223,0.508 -0.392,0.647c-0.17,0.139 -0.362,0.208 -0.578,0.208c-0.339,0 -0.87,-0.216 -1.594,-0.647c-0.724,-0.431 -1.609,-0.916 -2.657,-1.455c-1.047,-0.539 -2.287,-1.032 -3.719,-1.479c-1.432,-0.446 -3.042,-0.67 -4.828,-0.67c-1.663,0 -3.111,0.224 -4.343,0.67c-1.232,0.447 -2.249,1.04 -3.049,1.779c-0.801,0.739 -1.402,1.617 -1.802,2.634c-0.401,1.016 -0.601,2.094 -0.601,3.234c0,1.663 0.385,3.095 1.155,4.297c0.77,1.201 1.794,2.264 3.073,3.188c1.278,0.924 2.733,1.771 4.366,2.541c1.632,0.77 3.295,1.548 4.99,2.333c1.694,0.785 3.357,1.648 4.989,2.587c1.633,0.94 3.088,2.049 4.367,3.327c1.278,1.278 2.31,2.787 3.095,4.528c0.786,1.74 1.178,3.796 1.178,6.168Z" style="fill:#333;fill-rule:nonzero;"/><path d="M886.638,283.389c0,0.247 -0.054,0.454 -0.161,0.624c-0.108,0.169 -0.301,0.316 -0.578,0.439c-0.277,0.123 -0.639,0.215 -1.086,0.277c-0.446,0.062 -0.993,0.092 -1.64,0.092c-0.708,0 -1.286,-0.03 -1.733,-0.092c-0.446,-0.062 -0.8,-0.154 -1.062,-0.277c-0.262,-0.123 -0.439,-0.27 -0.532,-0.439c-0.092,-0.17 -0.138,-0.377 -0.138,-0.624l0,-5.498c-2.372,2.618 -4.713,4.528 -7.023,5.729c-2.31,1.201 -4.651,1.802 -7.023,1.802c-2.772,0 -5.105,-0.462 -6.999,-1.386c-1.895,-0.924 -3.427,-2.179 -4.597,-3.766c-1.171,-1.586 -2.01,-3.434 -2.519,-5.544c-0.508,-2.11 -0.762,-4.674 -0.762,-7.693l0,-25.226c0,-0.246 0.054,-0.454 0.162,-0.624c0.108,-0.169 0.316,-0.323 0.624,-0.462c0.308,-0.138 0.708,-0.231 1.201,-0.277c0.493,-0.046 1.109,-0.069 1.848,-0.069c0.739,0 1.355,0.023 1.848,0.069c0.493,0.046 0.886,0.139 1.178,0.277c0.293,0.139 0.501,0.293 0.624,0.462c0.123,0.17 0.185,0.378 0.185,0.624l0,24.21c0,2.433 0.177,4.382 0.531,5.845c0.354,1.463 0.893,2.71 1.617,3.742c0.724,1.032 1.64,1.833 2.749,2.403c1.109,0.569 2.403,0.854 3.881,0.854c1.91,0 3.812,-0.677 5.706,-2.033c1.895,-1.355 3.904,-3.342 6.03,-5.96l0,-29.061c0,-0.246 0.054,-0.454 0.161,-0.624c0.108,-0.169 0.316,-0.323 0.624,-0.462c0.308,-0.138 0.701,-0.231 1.178,-0.277c0.478,-0.046 1.101,-0.069 1.871,-0.069c0.74,0 1.356,0.023 1.849,0.069c0.492,0.046 0.877,0.139 1.155,0.277c0.277,0.139 0.485,0.293 0.623,0.462c0.139,0.17 0.208,0.378 0.208,0.624l0,41.582Z" style="fill:#333;fill-rule:nonzero;"/><path d="M938.986,261.951c0,3.635 -0.393,6.9 -1.179,9.795c-0.785,2.895 -1.94,5.352 -3.465,7.369c-1.524,2.018 -3.411,3.573 -5.66,4.667c-2.248,1.093 -4.82,1.64 -7.715,1.64c-1.232,0 -2.372,-0.123 -3.419,-0.37c-1.048,-0.246 -2.072,-0.631 -3.073,-1.155c-1.001,-0.523 -1.994,-1.185 -2.98,-1.986c-0.986,-0.801 -2.033,-1.741 -3.142,-2.819l0,20.791c0,0.247 -0.061,0.462 -0.184,0.647c-0.124,0.185 -0.324,0.339 -0.601,0.462c-0.277,0.123 -0.662,0.216 -1.155,0.277c-0.493,0.062 -1.124,0.093 -1.894,0.093c-0.74,0 -1.356,-0.031 -1.849,-0.093c-0.492,-0.061 -0.885,-0.154 -1.178,-0.277c-0.292,-0.123 -0.493,-0.277 -0.6,-0.462c-0.108,-0.185 -0.162,-0.4 -0.162,-0.647l0,-58.076c0,-0.277 0.046,-0.501 0.139,-0.67c0.092,-0.169 0.277,-0.316 0.554,-0.439c0.277,-0.123 0.631,-0.208 1.063,-0.254c0.431,-0.046 0.954,-0.069 1.571,-0.069c0.646,0 1.178,0.023 1.594,0.069c0.415,0.046 0.762,0.131 1.039,0.254c0.277,0.123 0.47,0.27 0.578,0.439c0.107,0.169 0.161,0.393 0.161,0.67l0,5.59c1.263,-1.293 2.48,-2.417 3.65,-3.372c1.171,-0.955 2.349,-1.748 3.535,-2.38c1.186,-0.631 2.402,-1.109 3.65,-1.432c1.247,-0.323 2.564,-0.485 3.95,-0.485c3.019,0 5.591,0.585 7.716,1.756c2.125,1.17 3.858,2.772 5.198,4.805c1.34,2.033 2.317,4.397 2.933,7.092c0.617,2.695 0.925,5.552 0.925,8.57Zm-7.901,0.878c0,-2.125 -0.163,-4.181 -0.488,-6.168c-0.325,-1.987 -0.883,-3.75 -1.673,-5.29c-0.791,-1.54 -1.852,-2.772 -3.185,-3.696c-1.332,-0.924 -2.99,-1.386 -4.974,-1.386c-0.992,0 -1.968,0.146 -2.929,0.439c-0.96,0.292 -1.936,0.754 -2.928,1.386c-0.992,0.631 -2.03,1.463 -3.115,2.495c-1.085,1.031 -2.231,2.302 -3.44,3.811l0,16.541c2.108,2.556 4.107,4.512 5.997,5.867c1.891,1.356 3.874,2.033 5.95,2.033c1.922,0 3.572,-0.462 4.951,-1.386c1.379,-0.924 2.495,-2.156 3.347,-3.696c0.852,-1.54 1.48,-3.265 1.883,-5.175c0.403,-1.909 0.604,-3.834 0.604,-5.775Z" style="fill:#333;fill-rule:nonzero;"/><path d="M988.699,261.951c0,3.635 -0.392,6.9 -1.178,9.795c-0.785,2.895 -1.94,5.352 -3.465,7.369c-1.525,2.018 -3.411,3.573 -5.66,4.667c-2.248,1.093 -4.82,1.64 -7.716,1.64c-1.232,0 -2.371,-0.123 -3.419,-0.37c-1.047,-0.246 -2.071,-0.631 -3.072,-1.155c-1.001,-0.523 -1.994,-1.185 -2.98,-1.986c-0.986,-0.801 -2.033,-1.741 -3.142,-2.819l0,20.791c0,0.247 -0.061,0.462 -0.185,0.647c-0.123,0.185 -0.323,0.339 -0.6,0.462c-0.278,0.123 -0.663,0.216 -1.155,0.277c-0.493,0.062 -1.125,0.093 -1.895,0.093c-0.739,0 -1.355,-0.031 -1.848,-0.093c-0.493,-0.061 -0.885,-0.154 -1.178,-0.277c-0.293,-0.123 -0.493,-0.277 -0.601,-0.462c-0.107,-0.185 -0.161,-0.4 -0.161,-0.647l0,-58.076c0,-0.277 0.046,-0.501 0.138,-0.67c0.093,-0.169 0.278,-0.316 0.555,-0.439c0.277,-0.123 0.631,-0.208 1.062,-0.254c0.432,-0.046 0.955,-0.069 1.571,-0.069c0.647,0 1.178,0.023 1.594,0.069c0.416,0.046 0.763,0.131 1.04,0.254c0.277,0.123 0.47,0.27 0.577,0.439c0.108,0.169 0.162,0.393 0.162,0.67l0,5.59c1.263,-1.293 2.48,-2.417 3.65,-3.372c1.171,-0.955 2.349,-1.748 3.535,-2.38c1.185,-0.631 2.402,-1.109 3.65,-1.432c1.247,-0.323 2.564,-0.485 3.95,-0.485c3.018,0 5.59,0.585 7.716,1.756c2.125,1.17 3.858,2.772 5.197,4.805c1.34,2.033 2.318,4.397 2.934,7.092c0.616,2.695 0.924,5.552 0.924,8.57Zm-7.9,0.878c0,-2.125 -0.163,-4.181 -0.488,-6.168c-0.326,-1.987 -0.883,-3.75 -1.674,-5.29c-0.79,-1.54 -1.851,-2.772 -3.184,-3.696c-1.333,-0.924 -2.991,-1.386 -4.974,-1.386c-0.992,0 -1.968,0.146 -2.929,0.439c-0.96,0.292 -1.937,0.754 -2.928,1.386c-0.992,0.631 -2.03,1.463 -3.115,2.495c-1.085,1.031 -2.231,2.302 -3.44,3.811l0,16.541c2.108,2.556 4.107,4.512 5.997,5.867c1.891,1.356 3.874,2.033 5.95,2.033c1.921,0 3.571,-0.462 4.951,-1.386c1.379,-0.924 2.494,-2.156 3.347,-3.696c0.852,-1.54 1.48,-3.265 1.882,-5.175c0.403,-1.909 0.605,-3.834 0.605,-5.775Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1038.83,262.136c0,3.388 -0.447,6.507 -1.34,9.356c-0.893,2.849 -2.225,5.306 -3.996,7.369c-1.772,2.064 -3.989,3.673 -6.654,4.828c-2.664,1.156 -5.752,1.733 -9.263,1.733c-3.419,0 -6.399,-0.508 -8.94,-1.525c-2.541,-1.016 -4.659,-2.495 -6.353,-4.435c-1.694,-1.941 -2.957,-4.297 -3.789,-7.069c-0.831,-2.772 -1.247,-5.914 -1.247,-9.425c0,-3.388 0.439,-6.507 1.317,-9.356c0.877,-2.849 2.202,-5.306 3.973,-7.37c1.771,-2.063 3.981,-3.665 6.63,-4.805c2.649,-1.139 5.744,-1.709 9.287,-1.709c3.419,0 6.399,0.508 8.94,1.525c2.541,1.016 4.659,2.494 6.353,4.435c1.694,1.94 2.964,4.297 3.811,7.069c0.847,2.772 1.271,5.898 1.271,9.379Zm-7.901,0.508c0,-2.248 -0.21,-4.374 -0.629,-6.376c-0.42,-2.002 -1.111,-3.757 -2.075,-5.267c-0.963,-1.509 -2.269,-2.703 -3.916,-3.58c-1.647,-0.878 -3.698,-1.317 -6.154,-1.317c-2.269,0 -4.219,0.4 -5.851,1.201c-1.631,0.801 -2.976,1.933 -4.032,3.396c-1.057,1.463 -1.842,3.196 -2.354,5.198c-0.513,2.002 -0.77,4.189 -0.77,6.56c0,2.28 0.21,4.42 0.63,6.423c0.42,2.002 1.119,3.75 2.098,5.244c0.979,1.493 2.292,2.679 3.939,3.557c1.647,0.878 3.698,1.317 6.154,1.317c2.238,0 4.18,-0.401 5.827,-1.201c1.648,-0.801 3,-1.925 4.056,-3.373c1.057,-1.448 1.834,-3.173 2.331,-5.175c0.498,-2.002 0.746,-4.204 0.746,-6.607Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1074.36,244.533c0,0.678 -0.016,1.247 -0.047,1.709c-0.03,0.462 -0.092,0.824 -0.184,1.086c-0.093,0.262 -0.208,0.462 -0.347,0.601c-0.139,0.138 -0.331,0.208 -0.577,0.208c-0.247,0 -0.547,-0.07 -0.901,-0.208c-0.355,-0.139 -0.755,-0.277 -1.202,-0.416c-0.446,-0.139 -0.947,-0.27 -1.501,-0.393c-0.555,-0.123 -1.155,-0.185 -1.802,-0.185c-0.77,0 -1.525,0.154 -2.264,0.462c-0.739,0.308 -1.517,0.817 -2.333,1.525c-0.817,0.709 -1.671,1.648 -2.565,2.818c-0.893,1.171 -1.878,2.603 -2.956,4.297l0,27.352c0,0.247 -0.062,0.454 -0.185,0.624c-0.124,0.169 -0.324,0.316 -0.601,0.439c-0.277,0.123 -0.662,0.215 -1.155,0.277c-0.493,0.062 -1.124,0.092 -1.894,0.092c-0.74,0 -1.356,-0.03 -1.848,-0.092c-0.493,-0.062 -0.886,-0.154 -1.179,-0.277c-0.292,-0.123 -0.492,-0.27 -0.6,-0.439c-0.108,-0.17 -0.162,-0.377 -0.162,-0.624l0,-41.582c0,-0.246 0.046,-0.454 0.139,-0.624c0.092,-0.169 0.277,-0.323 0.554,-0.462c0.277,-0.138 0.632,-0.231 1.063,-0.277c0.431,-0.046 1.001,-0.069 1.709,-0.069c0.678,0 1.24,0.023 1.687,0.069c0.446,0.046 0.793,0.139 1.039,0.277c0.247,0.139 0.424,0.293 0.532,0.462c0.107,0.17 0.161,0.378 0.161,0.624l0,6.052c1.14,-1.663 2.21,-3.018 3.211,-4.065c1.001,-1.048 1.949,-1.872 2.842,-2.472c0.893,-0.601 1.779,-1.017 2.656,-1.248c0.878,-0.231 1.764,-0.346 2.657,-0.346c0.4,0 0.855,0.023 1.363,0.069c0.508,0.046 1.04,0.131 1.594,0.254c0.554,0.123 1.055,0.262 1.502,0.416c0.446,0.154 0.762,0.308 0.947,0.462c0.185,0.154 0.308,0.3 0.369,0.439c0.062,0.139 0.116,0.316 0.162,0.531c0.046,0.216 0.077,0.532 0.092,0.948c0.016,0.415 0.024,0.977 0.024,1.686Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1104.67,280.34c0,0.893 -0.061,1.601 -0.184,2.125c-0.124,0.524 -0.308,0.909 -0.555,1.155c-0.246,0.247 -0.616,0.478 -1.109,0.693c-0.493,0.216 -1.055,0.393 -1.686,0.532c-0.632,0.138 -1.302,0.254 -2.01,0.346c-0.708,0.092 -1.417,0.139 -2.125,0.139c-2.156,0 -4.004,-0.285 -5.545,-0.855c-1.54,-0.57 -2.802,-1.432 -3.788,-2.587c-0.986,-1.155 -1.702,-2.619 -2.149,-4.39c-0.446,-1.771 -0.669,-3.858 -0.669,-6.26l0,-24.303l-5.822,0c-0.462,0 -0.832,-0.246 -1.109,-0.739c-0.277,-0.493 -0.416,-1.293 -0.416,-2.402c0,-0.586 0.039,-1.078 0.116,-1.479c0.077,-0.4 0.177,-0.731 0.3,-0.993c0.123,-0.262 0.285,-0.447 0.485,-0.555c0.2,-0.107 0.424,-0.161 0.67,-0.161l5.776,0l0,-9.888c0,-0.215 0.053,-0.415 0.161,-0.6c0.108,-0.185 0.308,-0.347 0.601,-0.485c0.292,-0.139 0.685,-0.239 1.178,-0.301c0.493,-0.061 1.109,-0.092 1.848,-0.092c0.77,0 1.402,0.031 1.894,0.092c0.493,0.062 0.878,0.162 1.155,0.301c0.278,0.138 0.478,0.3 0.601,0.485c0.123,0.185 0.185,0.385 0.185,0.6l0,9.888l10.673,0c0.246,0 0.462,0.054 0.646,0.161c0.185,0.108 0.347,0.293 0.486,0.555c0.138,0.262 0.238,0.593 0.3,0.993c0.062,0.401 0.092,0.893 0.092,1.479c0,1.109 -0.138,1.909 -0.415,2.402c-0.278,0.493 -0.647,0.739 -1.109,0.739l-10.673,0l0,23.194c0,2.865 0.423,5.028 1.27,6.491c0.848,1.464 2.364,2.195 4.551,2.195c0.709,0 1.34,-0.069 1.895,-0.208c0.554,-0.138 1.047,-0.285 1.478,-0.439c0.431,-0.154 0.801,-0.3 1.109,-0.439c0.308,-0.138 0.585,-0.208 0.832,-0.208c0.154,0 0.3,0.039 0.439,0.116c0.138,0.077 0.246,0.223 0.323,0.439c0.077,0.215 0.146,0.508 0.208,0.878c0.062,0.369 0.092,0.831 0.092,1.386Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1149.21,260.796c0,1.201 -0.301,2.056 -0.904,2.564c-0.604,0.509 -1.292,0.763 -2.066,0.763l-27.385,0c0,2.31 0.233,4.389 0.697,6.237c0.464,1.848 1.238,3.434 2.321,4.759c1.083,1.324 2.492,2.341 4.225,3.049c1.733,0.709 3.854,1.063 6.36,1.063c1.981,0 3.746,-0.162 5.293,-0.485c1.548,-0.324 2.886,-0.686 4.016,-1.086c1.13,-0.4 2.059,-0.762 2.786,-1.086c0.727,-0.323 1.277,-0.485 1.649,-0.485c0.216,0 0.409,0.054 0.58,0.162c0.17,0.108 0.301,0.269 0.394,0.485c0.093,0.216 0.163,0.516 0.209,0.901c0.047,0.385 0.07,0.855 0.07,1.409c0,0.401 -0.016,0.747 -0.046,1.04c-0.031,0.292 -0.07,0.554 -0.116,0.785c-0.046,0.231 -0.123,0.439 -0.231,0.624c-0.108,0.185 -0.246,0.362 -0.416,0.531c-0.169,0.17 -0.67,0.447 -1.501,0.832c-0.832,0.385 -1.91,0.762 -3.235,1.132c-1.324,0.369 -2.856,0.701 -4.597,0.993c-1.74,0.293 -3.596,0.439 -5.567,0.439c-3.419,0 -6.414,-0.477 -8.986,-1.432c-2.572,-0.955 -4.736,-2.372 -6.492,-4.251c-1.756,-1.879 -3.08,-4.235 -3.973,-7.069c-0.894,-2.834 -1.34,-6.129 -1.34,-9.887c0,-3.573 0.462,-6.784 1.386,-9.633c0.924,-2.849 2.256,-5.267 3.996,-7.254c1.741,-1.987 3.843,-3.511 6.307,-4.574c2.464,-1.063 5.221,-1.594 8.27,-1.594c3.265,0 6.045,0.524 8.34,1.571c2.295,1.047 4.181,2.456 5.66,4.227c1.478,1.771 2.564,3.85 3.257,6.238c0.693,2.387 1.039,4.936 1.039,7.646l0,1.386Zm-7.669,-2.264c0.092,-4.004 -0.799,-7.146 -2.673,-9.425c-1.875,-2.279 -4.656,-3.419 -8.344,-3.419c-1.891,0 -3.549,0.354 -4.974,1.063c-1.426,0.708 -2.619,1.648 -3.58,2.818c-0.961,1.17 -1.705,2.533 -2.231,4.089c-0.527,1.555 -0.821,3.18 -0.884,4.874l22.686,0Z" style="fill:#333;fill-rule:nonzero;"/><path d="M1196.42,283.389c0,0.247 -0.054,0.462 -0.161,0.647c-0.108,0.185 -0.293,0.331 -0.555,0.439c-0.262,0.108 -0.608,0.192 -1.039,0.254c-0.432,0.062 -0.955,0.092 -1.571,0.092c-0.647,0 -1.186,-0.03 -1.617,-0.092c-0.432,-0.062 -0.786,-0.146 -1.063,-0.254c-0.277,-0.108 -0.477,-0.254 -0.601,-0.439c-0.123,-0.185 -0.184,-0.4 -0.184,-0.647l0,-5.498c-2.187,2.372 -4.459,4.22 -6.815,5.544c-2.357,1.325 -4.936,1.987 -7.739,1.987c-3.05,0 -5.652,-0.593 -7.808,-1.779c-2.157,-1.186 -3.905,-2.787 -5.244,-4.805c-1.34,-2.017 -2.318,-4.389 -2.934,-7.115c-0.616,-2.726 -0.924,-5.598 -0.924,-8.617c0,-3.573 0.385,-6.799 1.155,-9.679c0.77,-2.88 1.909,-5.336 3.419,-7.369c1.509,-2.033 3.38,-3.596 5.613,-4.69c2.233,-1.093 4.813,-1.64 7.739,-1.64c2.434,0 4.659,0.531 6.676,1.594c2.018,1.063 4.012,2.626 5.984,4.689l0,-24.163c0,-0.216 0.054,-0.424 0.161,-0.624c0.108,-0.2 0.316,-0.354 0.624,-0.462c0.308,-0.108 0.701,-0.2 1.178,-0.277c0.478,-0.077 1.086,-0.116 1.825,-0.116c0.77,0 1.402,0.039 1.895,0.116c0.492,0.077 0.877,0.169 1.155,0.277c0.277,0.108 0.485,0.262 0.623,0.462c0.139,0.2 0.208,0.408 0.208,0.624l0,61.541Zm-7.669,-29.246c-2.064,-2.557 -4.058,-4.505 -5.984,-5.845c-1.925,-1.339 -3.934,-2.009 -6.029,-2.009c-1.94,0 -3.588,0.462 -4.944,1.386c-1.355,0.924 -2.456,2.14 -3.303,3.65c-0.847,1.509 -1.463,3.218 -1.848,5.128c-0.385,1.91 -0.578,3.85 -0.578,5.822c0,2.094 0.162,4.142 0.485,6.145c0.324,2.002 0.886,3.78 1.687,5.336c0.801,1.555 1.863,2.803 3.188,3.742c1.324,0.94 2.988,1.41 4.99,1.41c1.016,0 1.994,-0.139 2.934,-0.416c0.939,-0.278 1.902,-0.74 2.887,-1.386c0.986,-0.647 2.018,-1.487 3.096,-2.518c1.078,-1.032 2.217,-2.303 3.419,-3.812l0,-16.633Z" style="fill:#333;fill-rule:nonzero;"/><g><g><path d="M280.884,219.245c1.765,0 3.198,-1.433 3.198,-3.198l0,-6.395c0,-1.765 -1.433,-3.197 -3.198,-3.197l-225.605,0c-1.764,0 -3.197,1.432 -3.197,3.197l0,6.395c0,1.765 1.433,3.198 3.197,3.198l225.605,0Z" style="fill:#8c8c8c;"/><path d="M280.884,165.588c1.765,0 3.198,-1.433 3.198,-3.198l0,-6.395c0,-1.765 -1.433,-3.197 -3.198,-3.197l-225.605,0c-1.764,0 -3.197,1.432 -3.197,3.197l0,6.395c0,1.765 1.433,3.198 3.197,3.198l225.605,0Z" style="fill:#8c8c8c;"/><path d="M280.884,192.416c1.765,0 3.198,-1.432 3.198,-3.197l0,-6.395c0,-1.765 -1.433,-3.198 -3.198,-3.198l-225.605,0c-1.764,0 -3.197,1.433 -3.197,3.198l0,6.395c0,1.765 1.433,3.197 3.197,3.197l225.605,0Z" style="fill:#8c8c8c;"/><path d="M280.884,138.759c1.765,0 3.198,-1.432 3.198,-3.197l0,-6.395c0,-1.765 -1.433,-3.198 -3.198,-3.198l-225.605,0c-1.764,0 -3.197,1.433 -3.197,3.198l0,6.395c0,1.765 1.433,3.197 3.197,3.197l225.605,0Z" style="fill:#8c8c8c;"/><path d="M280.884,246.074c1.765,0 3.198,-1.433 3.198,-3.198l0,-6.395c0,-1.765 -1.433,-3.198 -3.198,-3.198l-225.605,0c-1.764,0 -3.197,1.433 -3.197,3.198l0,6.395c0,1.765 1.433,3.198 3.197,3.198l225.605,0Z" style="fill:#8c8c8c;"/><path d="M134.858,298.824c0,1.764 1.433,3.197 3.198,3.197l6.395,0c1.765,0 3.197,-1.433 3.197,-3.197l0,-225.605c0,-1.765 -1.432,-3.198 -3.197,-3.198l-6.395,0c-1.765,0 -3.198,1.433 -3.198,3.198l0,225.605Z" style="fill:#8c8c8c;"/><path d="M188.515,298.824c0,1.764 1.433,3.197 3.198,3.197l6.395,0c1.765,0 3.198,-1.433 3.198,-3.197l0,-225.605c0,-1.765 -1.433,-3.198 -3.198,-3.198l-6.395,0c-1.765,0 -3.198,1.433 -3.198,3.198l0,225.605Z" style="fill:#8c8c8c;"/><path d="M161.687,298.824c0,1.764 1.432,3.197 3.197,3.197l6.395,0c1.765,0 3.198,-1.433 3.198,-3.197l0,-225.605c0,-1.765 -1.433,-3.198 -3.198,-3.198l-6.395,0c-1.765,0 -3.197,1.433 -3.197,3.198l0,225.605Z" style="fill:#8c8c8c;"/><path d="M215.344,298.824c0,1.764 1.433,3.197 3.197,3.197l6.396,0c1.764,0 3.197,-1.433 3.197,-3.197l0,-225.605c0,-1.765 -1.433,-3.198 -3.197,-3.198l-6.396,0c-1.764,0 -3.197,1.433 -3.197,3.198l0,225.605Z" style="fill:#8c8c8c;"/><path d="M108.029,298.824c0,1.764 1.433,3.197 3.198,3.197l6.395,0c1.765,0 3.198,-1.433 3.198,-3.197l0,-225.605c0,-1.765 -1.433,-3.198 -3.198,-3.198l-6.395,0c-1.765,0 -3.198,1.433 -3.198,3.198l0,225.605Z" style="fill:#8c8c8c;"/></g><path d="M232.655,278.269c15.274,0 27.674,-12.401 27.674,-27.674l0,-129.147c0,-15.274 -12.4,-27.674 -27.674,-27.674l-129.146,0c-15.274,0 -27.675,12.4 -27.675,27.674l0,129.147c0,15.273 12.401,27.674 27.675,27.674l129.146,0Z" style="fill:#333;"/><path d="M220.739,175.532c0,6.734 -1.056,12.768 -3.167,18.104c-2.112,5.335 -5.122,9.886 -9.031,13.653c-3.909,3.766 -8.645,6.676 -14.209,8.731c-5.564,2.054 -11.855,3.167 -18.874,3.338l0,20.458c0,0.456 -0.114,0.856 -0.343,1.198c-0.228,0.342 -0.627,0.614 -1.198,0.813c-0.571,0.2 -1.327,0.357 -2.268,0.471c-0.942,0.114 -2.126,0.171 -3.553,0.171c-1.426,0 -2.61,-0.057 -3.552,-0.171c-0.942,-0.114 -1.683,-0.271 -2.226,-0.471c-0.542,-0.199 -0.941,-0.471 -1.198,-0.813c-0.257,-0.342 -0.385,-0.742 -0.385,-1.198l0,-20.458c-7.133,-0.171 -13.496,-1.199 -19.088,-3.082c-5.593,-1.883 -10.329,-4.608 -14.21,-8.174c-3.88,-3.567 -6.847,-7.947 -8.902,-13.139c-2.054,-5.193 -3.081,-11.157 -3.081,-17.89l0,-43.741c0,-0.399 0.128,-0.77 0.385,-1.113c0.257,-0.342 0.656,-0.627 1.198,-0.856c0.542,-0.228 1.284,-0.399 2.226,-0.513c0.941,-0.114 2.125,-0.171 3.552,-0.171c1.427,0 2.611,0.057 3.552,0.171c0.942,0.114 1.698,0.285 2.269,0.513c0.57,0.229 0.97,0.514 1.198,0.856c0.228,0.343 0.343,0.714 0.343,1.113l0,42.457c0,4.736 0.627,9.002 1.883,12.796c1.255,3.795 3.138,7.019 5.649,9.673c2.511,2.654 5.692,4.708 9.544,6.163c3.852,1.455 8.346,2.24 13.482,2.354l0,-73.443c0,-0.399 0.128,-0.77 0.385,-1.113c0.257,-0.342 0.685,-0.627 1.284,-0.856c0.599,-0.228 1.37,-0.399 2.311,-0.513c0.942,-0.114 2.069,-0.171 3.381,-0.171c1.427,0 2.611,0.057 3.553,0.171c0.941,0.114 1.697,0.285 2.268,0.513c0.571,0.229 0.97,0.514 1.198,0.856c0.229,0.343 0.343,0.714 0.343,1.113l0,73.443c5.136,-0.057 9.615,-0.842 13.439,-2.354c3.823,-1.512 7.004,-3.595 9.544,-6.249c2.539,-2.653 4.451,-5.849 5.735,-9.587c1.284,-3.737 1.926,-7.889 1.926,-12.454l0,-42.799c0,-0.399 0.114,-0.77 0.342,-1.113c0.228,-0.342 0.628,-0.627 1.198,-0.856c0.571,-0.228 1.313,-0.399 2.226,-0.513c0.913,-0.114 2.111,-0.171 3.595,-0.171c1.37,0 2.525,0.057 3.467,0.171c0.941,0.114 1.683,0.285 2.225,0.513c0.542,0.229 0.942,0.514 1.199,0.856c0.256,0.343 0.385,0.714 0.385,1.113l0,42.2Z" style="fill:#fff;fill-rule:nonzero;"/><path d="M220.739,175.532c0,6.734 -1.056,12.768 -3.167,18.104c-2.112,5.335 -5.122,9.886 -9.031,13.653c-3.909,3.766 -8.645,6.676 -14.209,8.731c-5.564,2.054 -11.855,3.167 -18.874,3.338l0,20.458c0,0.456 -0.114,0.856 -0.343,1.198c-0.228,0.342 -0.627,0.614 -1.198,0.813c-0.571,0.2 -1.327,0.357 -2.268,0.471c-0.942,0.114 -2.126,0.171 -3.553,0.171c-1.426,0 -2.61,-0.057 -3.552,-0.171c-0.942,-0.114 -1.683,-0.271 -2.226,-0.471c-0.542,-0.199 -0.941,-0.471 -1.198,-0.813c-0.257,-0.342 -0.385,-0.742 -0.385,-1.198l0,-20.458c-7.133,-0.171 -13.496,-1.199 -19.088,-3.082c-5.593,-1.883 -10.329,-4.608 -14.21,-8.174c-3.88,-3.567 -6.847,-7.947 -8.902,-13.139c-2.054,-5.193 -3.081,-11.157 -3.081,-17.89l0,-43.741c0,-0.399 0.128,-0.77 0.385,-1.113c0.257,-0.342 0.656,-0.627 1.198,-0.856c0.542,-0.228 1.284,-0.399 2.226,-0.513c0.941,-0.114 2.125,-0.171 3.552,-0.171c1.427,0 2.611,0.057 3.552,0.171c0.942,0.114 1.698,0.285 2.269,0.513c0.57,0.229 0.97,0.514 1.198,0.856c0.228,0.343 0.343,0.714 0.343,1.113l0,42.457c0,4.736 0.627,9.002 1.883,12.796c1.255,3.795 3.138,7.019 5.649,9.673c2.511,2.654 5.692,4.708 9.544,6.163c3.852,1.455 8.346,2.24 13.482,2.354l0,-73.443c0,-0.399 0.128,-0.77 0.385,-1.113c0.257,-0.342 0.685,-0.627 1.284,-0.856c0.599,-0.228 1.37,-0.399 2.311,-0.513c0.942,-0.114 2.069,-0.171 3.381,-0.171c1.427,0 2.611,0.057 3.553,0.171c0.941,0.114 1.697,0.285 2.268,0.513c0.571,0.229 0.97,0.514 1.198,0.856c0.229,0.343 0.343,0.714 0.343,1.113l0,73.443c5.136,-0.057 9.615,-0.842 13.439,-2.354c3.823,-1.512 7.004,-3.595 9.544,-6.249c2.539,-2.653 4.451,-5.849 5.735,-9.587c1.284,-3.737 1.926,-7.889 1.926,-12.454l0,-42.799c0,-0.399 0.114,-0.77 0.342,-1.113c0.228,-0.342 0.628,-0.627 1.198,-0.856c0.571,-0.228 1.313,-0.399 2.226,-0.513c0.913,-0.114 2.111,-0.171 3.595,-0.171c1.37,0 2.525,0.057 3.467,0.171c0.941,0.114 1.683,0.285 2.225,0.513c0.542,0.229 0.942,0.514 1.199,0.856c0.256,0.343 0.385,0.714 0.385,1.113l0,42.2Z" style="fill:#fff;fill-rule:nonzero;"/></g></g></svg> diff --git a/docs/tap_hold.md b/docs/tap_hold.md index 254d5de5ec..f1af753eba 100644 --- a/docs/tap_hold.md +++ b/docs/tap_hold.md @@ -425,6 +425,89 @@ uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record) { If `QUICK_TAP_TERM` is set higher than `TAPPING_TERM`, it will default to `TAPPING_TERM`. ::: +## Flow Tap + +Flow Tap modifies mod-tap `MT` and layer-tap `LT` keys such that when pressed within a short timeout of the preceding key, the tapping behavior is triggered. This is particularly useful for home row mods to avoid accidental mod triggers. It basically disables the hold behavior during fast typing, creating a "flow of taps." This also helps to reduce the input lag of tap-hold keys during fast typing, since the tapped behavior is sent immediately. + +Flow Tap is enabled by defining `FLOW_TAP_TERM` in your `config.h` with the desired timeout in milliseconds. A timeout of 150 ms is recommended as a starting point: + +```c +#define FLOW_TAP_TERM 150 +``` + +By default, Flow Tap is enabled when: + +* The tap-hold key is pressed within `FLOW_TAP_TERM` milliseconds of the previous key press. + +* The tapping keycodes of the previous key and tap-hold key are *both* among `KC_A`–`KC_Z`, `KC_COMM`, `KC_DOT`, `KC_SCLN`, `KC_SLSH` (the main alphas area of a conventional QWERTY layout) or `KC_SPC`. + +As an exception to the above, Flow Tap is temporarily disabled while a tap-hold key is undecided. This is to allow chording multiple mod-tap keys without having to wait out the Flow Tap term. + + +### is_flow_tap_key() + +Optionally, define the `is_flow_tap_key()` callback to specify where Flow Tap is enabled. The callback is called for both the tap-hold key *and* the key press immediately preceding it, and if the callback returns true for both keycodes, Flow Tap is enabled. + +The default implementation of this callback is: + +```.c +bool is_flow_tap_key(uint16_t keycode) { + if ((get_mods() & (MOD_MASK_CG | MOD_BIT_LALT)) != 0) { + return false; // Disable Flow Tap on hotkeys. + } + switch (get_tap_keycode(keycode)) { + case KC_SPC: + case KC_A ... KC_Z: + case KC_DOT: + case KC_COMM: + case KC_SCLN: + case KC_SLSH: + return true; + } + return false; +} +``` + +Copy the above to your `keymap.c` and edit to customize. For instance, remove the `case KC_SPC` line to disable Flow Tap for the Space key. + +### get_flow_tap_term() + +Optionally, for further flexibility, define the `get_flow_tap_term()` callback. Flow Tap acts only when key events are closer together than the time returned by the callback. Return a time of 0 to disable filtering. In this way, Flow Tap may be disabled for certain tap-hold keys, or when following certain previous keys. + +The default implementation of this callback is + +```.c +uint16_t get_flow_tap_term(uint16_t keycode, keyrecord_t* record, + uint16_t prev_keycode) { + if (is_flow_tap_key(keycode) && is_flow_tap_key(prev_keycode)) { + return FLOW_TAP_TERM; + } + return 0; +} +``` + +In this callback, `keycode` and `record` correspond to the current tap-hold key, and `prev_keycode` is the keycode of the previous key. Return the timeout to use. Returning `0` disables Flow Tap. This callback enables setting per-key timeouts. It is also possible to enable or disable Flow Tap for certain tap-hold keys or when following certain previous keys. Example: + +```c +uint16_t get_flow_tap_term(uint16_t keycode, keyrecord_t* record, + uint16_t prev_keycode) { + if (is_flow_tap_key(keycode) && is_flow_tap_key(prev_keycode)) { + switch (keycode) { + case LCTL_T(KC_F): + case RCTL_T(KC_H): + return FLOW_TAP_TERM - 25; // Short timeout on these keys. + + default: + return FLOW_TAP_TERM; // Longer timeout otherwise. + } + } + return 0; // Disable Flow Tap. +} +``` + +::: tip If you define both `is_flow_tap_key()` and `get_flow_tap_term()`, then the latter takes precedence. +::: + ## Chordal Hold Chordal Hold is intended to be used together with either Permissive Hold or Hold diff --git a/docs/unit_testing.md b/docs/unit_testing.md index 3e4c914bf1..aec4ec8334 100644 --- a/docs/unit_testing.md +++ b/docs/unit_testing.md @@ -58,6 +58,34 @@ It's not yet possible to do a full integration test, where you would compile the In that model you would emulate the input, and expect a certain output from the emulated keyboard. +# Keycode String {#keycode-string} + +It's much nicer to read keycodes as names like "`LT(2,KC_D)`" than numerical codes like "`0x4207`." To convert keycodes to human-readable strings, add `KEYCODE_STRING_ENABLE = yes` to the `rules.mk` file, then use the `get_keycode_string(kc)` function to convert a given 16-bit keycode to a string. + +```c +const char *key_name = get_keycode_string(keycode); +dprintf("kc: %s\n", key_name); +``` + +The stringified keycode may then be logged to console output with `dprintf()` or elsewhere. + +::: warning +Use the result of `get_keycode_string()` immediately. Subsequent invocations reuse the same static buffer and overwrite the previous contents. +::: + +Many common QMK keycodes are recognized by `get_keycode_string()`, but not all. These include some common basic keycodes, layer switch keycodes, mod-taps, one-shot keycodes, tap dance keycodes, and Unicode keycodes. As a fallback, an unrecognized keycode is written as a hex number. + +Optionally, `KEYCODE_STRING_NAMES_USER` may be defined to add names for additional keycodes. For example, supposing keymap.c defines `MYMACRO1` and `MYMACRO2` as custom keycodes, the following adds their names: + +```c +KEYCODE_STRING_NAMES_USER( + KEYCODE_STRING_NAME(MYMACRO1), + KEYCODE_STRING_NAME(MYMACRO2), +); +``` + +Similarly, `KEYCODE_STRING_NAMES_KB` may be defined to add names at the keyboard level. + # Tracing Variables {#tracing-variables} Sometimes you might wonder why a variable gets changed and where, and this can be quite tricky to track down without having a debugger. It's of course possible to manually add print statements to track it, but you can also enable the variable trace feature. This works for both variables that are changed by the code, and when the variable is changed by some memory corruption. diff --git a/drivers/battery/battery.c b/drivers/battery/battery.c new file mode 100644 index 0000000000..65497399e8 --- /dev/null +++ b/drivers/battery/battery.c @@ -0,0 +1,31 @@ +// Copyright 2025 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "battery_driver.h" +#include "battery.h" +#include "timer.h" + +#ifndef BATTERY_SAMPLE_INTERVAL +# define BATTERY_SAMPLE_INTERVAL 30000 +#endif + +static uint8_t last_bat_level = 100; + +void battery_init(void) { + battery_driver_init(); + + last_bat_level = battery_driver_sample_percent(); +} + +void battery_task(void) { + static uint32_t bat_timer = 0; + if (timer_elapsed32(bat_timer) > BATTERY_SAMPLE_INTERVAL) { + last_bat_level = battery_driver_sample_percent(); + + bat_timer = timer_read32(); + } +} + +uint8_t battery_get_percent(void) { + return last_bat_level; +} diff --git a/drivers/battery/battery.h b/drivers/battery/battery.h new file mode 100644 index 0000000000..831b1f07e5 --- /dev/null +++ b/drivers/battery/battery.h @@ -0,0 +1,34 @@ +// Copyright 2025 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include <stdint.h> + +/** + * \file + * + * \defgroup battery Battery API + * + * \brief API to query battery status. + * \{ + */ + +/** + * \brief Initialize the battery driver. + */ +void battery_init(void); + +/** + * \brief Perform housekeeping tasks. + */ +void battery_task(void); + +/** + * \brief Sample battery level. + * + * \return The battery percentage, in the range 0-100. + */ +uint8_t battery_get_percent(void); + +/** \} */ diff --git a/drivers/battery/battery_adc.c b/drivers/battery/battery_adc.c new file mode 100644 index 0000000000..cf0e69cb48 --- /dev/null +++ b/drivers/battery/battery_adc.c @@ -0,0 +1,55 @@ +// Copyright 2025 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "analog.h" +#include "gpio.h" + +#ifndef BATTERY_PIN +# error("BATTERY_PIN not configured!") +#endif + +#ifndef BATTERY_REF_VOLTAGE_MV +# define BATTERY_REF_VOLTAGE_MV 3300 +#endif + +#ifndef BATTERY_VOLTAGE_DIVIDER_R1 +# define BATTERY_VOLTAGE_DIVIDER_R1 100 +#endif + +#ifndef BATTERY_VOLTAGE_DIVIDER_R2 +# define BATTERY_VOLTAGE_DIVIDER_R2 100 +#endif + +// TODO: infer from adc config? +#ifndef BATTERY_ADC_RESOLUTION +# define BATTERY_ADC_RESOLUTION 10 +#endif + +void battery_driver_init(void) { + gpio_set_pin_input(BATTERY_PIN); +} + +uint16_t battery_driver_get_mv(void) { + uint32_t raw = analogReadPin(BATTERY_PIN); + + uint32_t bat_mv = raw * BATTERY_REF_VOLTAGE_MV / (1 << BATTERY_ADC_RESOLUTION); + +#if BATTERY_VOLTAGE_DIVIDER_R1 > 0 && BATTERY_VOLTAGE_DIVIDER_R2 > 0 + bat_mv = bat_mv * (BATTERY_VOLTAGE_DIVIDER_R1 + BATTERY_VOLTAGE_DIVIDER_R2) / BATTERY_VOLTAGE_DIVIDER_R2; +#endif + + return bat_mv; +} + +uint8_t battery_driver_sample_percent(void) { + uint16_t bat_mv = battery_driver_get_mv(); + + // https://github.com/zmkfirmware/zmk/blob/3f7c9d7cc4f46617faad288421025ea2a6b0bd28/app/module/drivers/sensor/battery/battery_common.c#L33 + if (bat_mv >= 4200) { + return 100; + } else if (bat_mv <= 3450) { + return 0; + } + + return bat_mv * 2 / 15 - 459; +} diff --git a/drivers/battery/battery_driver.h b/drivers/battery/battery_driver.h new file mode 100644 index 0000000000..c2ee75e966 --- /dev/null +++ b/drivers/battery/battery_driver.h @@ -0,0 +1,29 @@ +// Copyright 2025 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include <stdint.h> + +/** + * \file + * + * \defgroup battery Battery Driver API + * + * \brief API to query battery status. + * \{ + */ + +/** + * \brief Initialize the battery driver. This function must be called only once, before any of the below functions can be called. + */ +void battery_driver_init(void); + +/** + * \brief Sample battery level. + * + * \return The battery percentage, in the range 0-100. + */ +uint8_t battery_driver_sample_percent(void); + +/** \} */ diff --git a/drivers/bluetooth/bluefruit_le.cpp b/drivers/bluetooth/bluefruit_le.cpp index 218eca2195..5fdd104dcf 100644 --- a/drivers/bluetooth/bluefruit_le.cpp +++ b/drivers/bluetooth/bluefruit_le.cpp @@ -32,13 +32,8 @@ # define BLUEFRUIT_LE_SCK_DIVISOR 2 // 4MHz SCK/8MHz CPU, calculated for Feather 32U4 BLE #endif -#define SAMPLE_BATTERY #define ConnectionUpdateInterval 1000 /* milliseconds */ -#ifndef BATTERY_LEVEL_PIN -# define BATTERY_LEVEL_PIN B5 -#endif - static struct { bool is_connected; bool initialized; @@ -48,10 +43,6 @@ static struct { #define UsingEvents 2 bool event_flags; -#ifdef SAMPLE_BATTERY - uint16_t last_battery_update; - uint32_t vbat; -#endif uint16_t last_connection_update; } state; @@ -549,14 +540,6 @@ void bluefruit_le_task(void) { set_connected(atoi(resbuf)); } } - -#ifdef SAMPLE_BATTERY - if (timer_elapsed(state.last_battery_update) > BatteryUpdateInterval && resp_buf.empty()) { - state.last_battery_update = timer_read(); - - state.vbat = analogReadPin(BATTERY_LEVEL_PIN); - } -#endif } static bool process_queue_item(struct queue_item *item, uint16_t timeout) { @@ -655,10 +638,6 @@ void bluefruit_le_send_mouse(report_mouse_t *report) { } } -uint32_t bluefruit_le_read_battery_voltage(void) { - return state.vbat; -} - bool bluefruit_le_set_mode_leds(bool on) { if (!state.configured) { return false; diff --git a/drivers/bluetooth/bluefruit_le.h b/drivers/bluetooth/bluefruit_le.h index a3de03c35c..5efe92b6e0 100644 --- a/drivers/bluetooth/bluefruit_le.h +++ b/drivers/bluetooth/bluefruit_le.h @@ -45,10 +45,6 @@ extern void bluefruit_le_send_consumer(uint16_t usage); * change. */ extern void bluefruit_le_send_mouse(report_mouse_t *report); -/* Compute battery voltage by reading an analog pin. - * Returns the integer number of millivolts */ -extern uint32_t bluefruit_le_read_battery_voltage(void); - extern bool bluefruit_le_set_mode_leds(bool on); extern bool bluefruit_le_set_power_level(int8_t level); diff --git a/drivers/bluetooth/outputselect.c b/drivers/bluetooth/outputselect.c deleted file mode 100644 index b986ba274e..0000000000 --- a/drivers/bluetooth/outputselect.c +++ /dev/null @@ -1,70 +0,0 @@ -/* -Copyright 2017 Priyadi Iman Nurcahyo -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 "outputselect.h" -#include "usb_util.h" - -#ifdef BLUETOOTH_BLUEFRUIT_LE -# include "bluefruit_le.h" -#endif - -uint8_t desired_output = OUTPUT_DEFAULT; - -/** \brief Set Output - * - * FIXME: Needs doc - */ -void set_output(uint8_t output) { - set_output_user(output); - desired_output = output; -} - -/** \brief Set Output User - * - * FIXME: Needs doc - */ -__attribute__((weak)) void set_output_user(uint8_t output) {} - -/** \brief Auto Detect Output - * - * FIXME: Needs doc - */ -uint8_t auto_detect_output(void) { - if (usb_connected_state()) { - return OUTPUT_USB; - } - -#ifdef BLUETOOTH_BLUEFRUIT_LE - if (bluefruit_le_is_connected()) { - return OUTPUT_BLUETOOTH; - } -#endif - -#ifdef BLUETOOTH_ENABLE - return OUTPUT_BLUETOOTH; // should check if BT is connected here -#endif - - return OUTPUT_NONE; -} - -/** \brief Where To Send - * - * FIXME: Needs doc - */ -uint8_t where_to_send(void) { - if (desired_output == OUTPUT_AUTO) { - return auto_detect_output(); - } - return desired_output; -} diff --git a/drivers/bluetooth/outputselect.h b/drivers/bluetooth/outputselect.h index c4548e1122..25f063bbff 100644 --- a/drivers/bluetooth/outputselect.h +++ b/drivers/bluetooth/outputselect.h @@ -14,21 +14,17 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #pragma once -#include <stdint.h> +#include "connection.h" -enum outputs { - OUTPUT_AUTO, +// DEPRECATED - DO NOT USE - OUTPUT_NONE, - OUTPUT_USB, - OUTPUT_BLUETOOTH -}; +#define OUTPUT_AUTO CONNECTION_HOST_AUTO +#define OUTPUT_NONE CONNECTION_HOST_NONE +#define OUTPUT_USB CONNECTION_HOST_USB +#define OUTPUT_BLUETOOTH CONNECTION_HOST_BLUETOOTH -#ifndef OUTPUT_DEFAULT -# define OUTPUT_DEFAULT OUTPUT_AUTO -#endif +#define set_output connection_set_host_noeeprom +#define where_to_send connection_get_host +#define auto_detect_output connection_auto_detect_host -void set_output(uint8_t output); -void set_output_user(uint8_t output); -uint8_t auto_detect_output(void); -uint8_t where_to_send(void); +void set_output_user(uint8_t output); diff --git a/drivers/eeprom/eeprom_transient.h b/drivers/eeprom/eeprom_transient.h index 687b8619fe..0483fd58b9 100644 --- a/drivers/eeprom/eeprom_transient.h +++ b/drivers/eeprom/eeprom_transient.h @@ -20,6 +20,6 @@ The size of the transient EEPROM buffer size. */ #ifndef TRANSIENT_EEPROM_SIZE -# include "eeconfig.h" +# include "nvm_eeprom_eeconfig_internal.h" # define TRANSIENT_EEPROM_SIZE (((EECONFIG_SIZE + 3) / 4) * 4) // based off eeconfig's current usage, aligned to 4-byte sizes, to deal with LTO #endif diff --git a/drivers/painter/gc9xxx/qp_gc9a01_opcodes.h b/drivers/painter/gc9xxx/qp_gc9a01_opcodes.h index 5853902e68..31de5ee9e3 100644 --- a/drivers/painter/gc9xxx/qp_gc9a01_opcodes.h +++ b/drivers/painter/gc9xxx/qp_gc9a01_opcodes.h @@ -101,4 +101,4 @@ #define GC9A01_GRAM_INTERFACE_RGB 0b00000010 #define GC9A01_RGB_INTERFACE_MODE_1_TRANSFER 0b00000000 -#define GC9A01_RGB_INTERFACE_MODE_3_TRANSFER 0b00000001
\ No newline at end of file +#define GC9A01_RGB_INTERFACE_MODE_3_TRANSFER 0b00000001 diff --git a/drivers/painter/ili9xxx/qp_ili9486.c b/drivers/painter/ili9xxx/qp_ili9486.c index c4f3c15cec..48db779c04 100644 --- a/drivers/painter/ili9xxx/qp_ili9486.c +++ b/drivers/painter/ili9xxx/qp_ili9486.c @@ -75,9 +75,9 @@ static void qp_comms_spi_dc_reset_send_command_odd_cs_pulse(painter_device_t dev painter_driver_t * driver = (painter_driver_t *)device; qp_comms_spi_dc_reset_config_t *comms_config = (qp_comms_spi_dc_reset_config_t *)driver->comms_config; - writePinLow(comms_config->spi_config.chip_select_pin); + gpio_write_pin_low(comms_config->spi_config.chip_select_pin); qp_comms_spi_dc_reset_send_command(device, cmd); - writePinHigh(comms_config->spi_config.chip_select_pin); + gpio_write_pin_high(comms_config->spi_config.chip_select_pin); } static uint32_t qp_comms_spi_send_data_odd_cs_pulse(painter_device_t device, const void *data, uint32_t byte_count) { @@ -88,20 +88,20 @@ static uint32_t qp_comms_spi_send_data_odd_cs_pulse(painter_device_t device, con const uint8_t *p = (const uint8_t *)data; uint32_t max_msg_length = 1024; - writePinHigh(comms_config->dc_pin); + gpio_write_pin_high(comms_config->dc_pin); while (bytes_remaining > 0) { uint32_t bytes_this_loop = QP_MIN(bytes_remaining, max_msg_length); bool odd_bytes = bytes_this_loop & 1; // send data - writePinLow(comms_config->spi_config.chip_select_pin); + gpio_write_pin_low(comms_config->spi_config.chip_select_pin); spi_transmit(p, bytes_this_loop); p += bytes_this_loop; // extra CS toggle, for alignment if (odd_bytes) { - writePinHigh(comms_config->spi_config.chip_select_pin); - writePinLow(comms_config->spi_config.chip_select_pin); + gpio_write_pin_high(comms_config->spi_config.chip_select_pin); + gpio_write_pin_low(comms_config->spi_config.chip_select_pin); } bytes_remaining -= bytes_this_loop; @@ -116,9 +116,9 @@ static uint32_t qp_ili9486_send_data_toggling(painter_device_t device, const uin uint32_t ret; for (uint8_t j = 0; j < byte_count; ++j) { - writePinLow(comms_config->spi_config.chip_select_pin); + gpio_write_pin_low(comms_config->spi_config.chip_select_pin); ret = qp_comms_spi_dc_reset_send_data(device, &data[j], 1); - writePinHigh(comms_config->spi_config.chip_select_pin); + gpio_write_pin_high(comms_config->spi_config.chip_select_pin); } return ret; diff --git a/drivers/painter/ld7032/qp_ld7032.h b/drivers/painter/ld7032/qp_ld7032.h index 967eb7999c..9af80dd468 100644 --- a/drivers/painter/ld7032/qp_ld7032.h +++ b/drivers/painter/ld7032/qp_ld7032.h @@ -63,4 +63,4 @@ painter_device_t qp_ld7032_make_spi_device(uint16_t panel_width, uint16_t panel_ */ painter_device_t qp_ld7032_make_i2c_device(uint16_t panel_width, uint16_t panel_height, uint8_t i2c_address); -#endif // QUANTUM_PAINTER_LD7032_I2C_ENABLE
\ No newline at end of file +#endif // QUANTUM_PAINTER_LD7032_I2C_ENABLE diff --git a/drivers/painter/ld7032/qp_ld7032_opcodes.h b/drivers/painter/ld7032/qp_ld7032_opcodes.h index 08ab77d6f8..ed8b397c67 100644 --- a/drivers/painter/ld7032/qp_ld7032_opcodes.h +++ b/drivers/painter/ld7032/qp_ld7032_opcodes.h @@ -42,4 +42,4 @@ typedef enum { LD7032_S_START_STOP = 0xCD, LD7032_S_SELECT = 0xCE, LD7032_TESTCNT1 = 0xF0, //-0xFF -} ld7032_opcodes;
\ No newline at end of file +} ld7032_opcodes; diff --git a/drivers/sensors/pimoroni_trackball.c b/drivers/sensors/pimoroni_trackball.c index afbe3d5b77..06e5042953 100644 --- a/drivers/sensors/pimoroni_trackball.c +++ b/drivers/sensors/pimoroni_trackball.c @@ -101,12 +101,12 @@ int16_t pimoroni_trackball_get_offsets(uint8_t negative_dir, uint8_t positive_di } mouse_xy_report_t pimoroni_trackball_adapt_values(xy_clamp_range_t *offset) { - if (*offset > XY_REPORT_MAX) { - *offset -= XY_REPORT_MAX; - return (mouse_xy_report_t)XY_REPORT_MAX; - } else if (*offset < XY_REPORT_MIN) { - *offset += XY_REPORT_MAX; - return (mouse_xy_report_t)XY_REPORT_MIN; + if (*offset > MOUSE_REPORT_XY_MAX) { + *offset -= MOUSE_REPORT_XY_MAX; + return (mouse_xy_report_t)MOUSE_REPORT_XY_MAX; + } else if (*offset < MOUSE_REPORT_XY_MIN) { + *offset += MOUSE_REPORT_XY_MAX; + return (mouse_xy_report_t)MOUSE_REPORT_XY_MIN; } else { mouse_xy_report_t temp_return = *offset; *offset = 0; diff --git a/drivers/usbpd.h b/drivers/usbpd.h index df4f29bb9d..e9dca67f66 100644 --- a/drivers/usbpd.h +++ b/drivers/usbpd.h @@ -26,4 +26,4 @@ typedef enum { void usbpd_init(void); // Gets the current state of the USBPD allowance -usbpd_allowance_t usbpd_get_allowance(void);
\ No newline at end of file +usbpd_allowance_t usbpd_get_allowance(void); diff --git a/keyboards/0_sixty/info.json b/keyboards/0_sixty/info.json index ce76f808b2..ebe4d39625 100644 --- a/keyboards/0_sixty/info.json +++ b/keyboards/0_sixty/info.json @@ -1,6 +1,5 @@ { "manufacturer": "ven0mtr0n", - "url": "", "maintainer": "vinamarora8", "usb": { "vid": "0x7654", diff --git a/keyboards/0xc7/61key/keyboard.json b/keyboards/0xc7/61key/keyboard.json index ab5127db38..969d0ce7f9 100644 --- a/keyboards/0xc7/61key/keyboard.json +++ b/keyboards/0xc7/61key/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "61Key", "manufacturer": "0xC7", - "url": "", "maintainer": "RealEmanGaming", "usb": { "vid": "0xE117", @@ -14,7 +13,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": false, "key_lock": true, "mousekey": false, diff --git a/keyboards/0xcb/1337/keyboard.json b/keyboards/0xcb/1337/keyboard.json index b2ef00906b..9983d068bc 100644 --- a/keyboards/0xcb/1337/keyboard.json +++ b/keyboards/0xcb/1337/keyboard.json @@ -65,8 +65,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/0xcb/static/keyboard.json b/keyboards/0xcb/static/keyboard.json index 73a6a802cc..b0ec0b7a14 100644 --- a/keyboards/0xcb/static/keyboard.json +++ b/keyboards/0xcb/static/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/0xcb/tutelpad/keyboard.json b/keyboards/0xcb/tutelpad/keyboard.json index 2885377262..2517fa7072 100644 --- a/keyboards/0xcb/tutelpad/keyboard.json +++ b/keyboards/0xcb/tutelpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "TutelPad", "manufacturer": "ItsFiremanSam", - "url": "", "maintainer": "ItsFiremanSam", "usb": { "vid": "0xCB00", @@ -35,8 +34,6 @@ "bootloader": "caterina", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/1k/keyboard.json b/keyboards/1k/keyboard.json index 440856d0bd..269f11782a 100644 --- a/keyboards/1k/keyboard.json +++ b/keyboards/1k/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "1K", "manufacturer": "MakotoKurauchi", - "url": "", "maintainer": "MakotoKurauchi", "usb": { "vid": "0x0009", diff --git a/keyboards/1upkeyboards/1up60hse/keyboard.json b/keyboards/1upkeyboards/1up60hse/keyboard.json index 990b51c1f8..9f1d0c0ff4 100644 --- a/keyboards/1upkeyboards/1up60hse/keyboard.json +++ b/keyboards/1upkeyboards/1up60hse/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "1up60hse", "manufacturer": "1upkeyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x6F75", diff --git a/keyboards/1upkeyboards/1up60hte/keyboard.json b/keyboards/1upkeyboards/1up60hte/keyboard.json index 7f8a660d80..4f781f91ee 100644 --- a/keyboards/1upkeyboards/1up60hte/keyboard.json +++ b/keyboards/1upkeyboards/1up60hte/keyboard.json @@ -14,8 +14,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/1upkeyboards/1up60rgb/keyboard.json b/keyboards/1upkeyboards/1up60rgb/keyboard.json index f4ba111251..e863edae1b 100644 --- a/keyboards/1upkeyboards/1up60rgb/keyboard.json +++ b/keyboards/1upkeyboards/1up60rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "1UP RGB Underglow PCB", "manufacturer": "1upkeyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x6F75", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/1upkeyboards/1upocarina/keyboard.json b/keyboards/1upkeyboards/1upocarina/keyboard.json index 1f33c048c1..feeafdedbd 100644 --- a/keyboards/1upkeyboards/1upocarina/keyboard.json +++ b/keyboards/1upkeyboards/1upocarina/keyboard.json @@ -15,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/1upkeyboards/1upslider8/keyboard.json b/keyboards/1upkeyboards/1upslider8/keyboard.json index 6b65361f67..fd969c8f06 100644 --- a/keyboards/1upkeyboards/1upslider8/keyboard.json +++ b/keyboards/1upkeyboards/1upslider8/keyboard.json @@ -14,8 +14,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/1upkeyboards/1upsuper16v3/keyboard.json b/keyboards/1upkeyboards/1upsuper16v3/keyboard.json index 7ef33a0342..b3b7ef5535 100644 --- a/keyboards/1upkeyboards/1upsuper16v3/keyboard.json +++ b/keyboards/1upkeyboards/1upsuper16v3/keyboard.json @@ -16,8 +16,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/1upkeyboards/pi40/grid_v1_1/keyboard.json b/keyboards/1upkeyboards/pi40/grid_v1_1/keyboard.json index 63f76eb1a6..6d9fc9fe01 100644 --- a/keyboards/1upkeyboards/pi40/grid_v1_1/keyboard.json +++ b/keyboards/1upkeyboards/pi40/grid_v1_1/keyboard.json @@ -19,8 +19,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/1upkeyboards/pi40/mit_v1_0/keyboard.json b/keyboards/1upkeyboards/pi40/mit_v1_0/keyboard.json index ed1f139126..6cd624bad0 100644 --- a/keyboards/1upkeyboards/pi40/mit_v1_0/keyboard.json +++ b/keyboards/1upkeyboards/pi40/mit_v1_0/keyboard.json @@ -19,8 +19,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/1upkeyboards/pi40/mit_v1_1/keyboard.json b/keyboards/1upkeyboards/pi40/mit_v1_1/keyboard.json index aa19a502b9..402143991a 100644 --- a/keyboards/1upkeyboards/pi40/mit_v1_1/keyboard.json +++ b/keyboards/1upkeyboards/pi40/mit_v1_1/keyboard.json @@ -19,8 +19,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/1upkeyboards/pi50/info.json b/keyboards/1upkeyboards/pi50/info.json index 409fbecbc8..dd222b2b5d 100644 --- a/keyboards/1upkeyboards/pi50/info.json +++ b/keyboards/1upkeyboards/pi50/info.json @@ -16,8 +16,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/1upkeyboards/pi60/keyboard.json b/keyboards/1upkeyboards/pi60/keyboard.json index ca3007ee76..b25204bd13 100644 --- a/keyboards/1upkeyboards/pi60/keyboard.json +++ b/keyboards/1upkeyboards/pi60/keyboard.json @@ -16,8 +16,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/1upkeyboards/pi60_hse/keyboard.json b/keyboards/1upkeyboards/pi60_hse/keyboard.json index d5a5f86187..ec60c0c3f8 100644 --- a/keyboards/1upkeyboards/pi60_hse/keyboard.json +++ b/keyboards/1upkeyboards/pi60_hse/keyboard.json @@ -16,8 +16,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/1upkeyboards/pi60_rgb/keyboard.json b/keyboards/1upkeyboards/pi60_rgb/keyboard.json index 21dab3f71a..6e362eb8c9 100644 --- a/keyboards/1upkeyboards/pi60_rgb/keyboard.json +++ b/keyboards/1upkeyboards/pi60_rgb/keyboard.json @@ -16,8 +16,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/1upkeyboards/super16/keyboard.json b/keyboards/1upkeyboards/super16/keyboard.json index 9da4168d47..461b43764d 100644 --- a/keyboards/1upkeyboards/super16/keyboard.json +++ b/keyboards/1upkeyboards/super16/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "super16", "manufacturer": "1upkeyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x6F75", @@ -79,8 +78,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/1upkeyboards/super16v2/keyboard.json b/keyboards/1upkeyboards/super16v2/keyboard.json index 652b03006e..5c5123453c 100644 --- a/keyboards/1upkeyboards/super16v2/keyboard.json +++ b/keyboards/1upkeyboards/super16v2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "super16v2", "manufacturer": "1upkeyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x6F75", @@ -51,8 +50,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/1upkeyboards/sweet16/info.json b/keyboards/1upkeyboards/sweet16/info.json index 5fb70bb8e9..78c59fb2ae 100644 --- a/keyboards/1upkeyboards/sweet16/info.json +++ b/keyboards/1upkeyboards/sweet16/info.json @@ -1,12 +1,9 @@ { "keyboard_name": "Sweet16", "manufacturer": "1up Keyboards", - "url": "", "maintainer": "skullydazed", "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/1upkeyboards/sweet16/v1/keyboard.json b/keyboards/1upkeyboards/sweet16/v1/keyboard.json index 3ac73ce8eb..161ca65950 100644 --- a/keyboards/1upkeyboards/sweet16/v1/keyboard.json +++ b/keyboards/1upkeyboards/sweet16/v1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Sweet16", "manufacturer": "1up Keyboards", - "url": "", "maintainer": "skullydazed", "usb": { "vid": "0x6F75", diff --git a/keyboards/1upkeyboards/sweet16v2/kb2040/keyboard.json b/keyboards/1upkeyboards/sweet16v2/kb2040/keyboard.json index d8d6c5e3ea..40a0ec4039 100644 --- a/keyboards/1upkeyboards/sweet16v2/kb2040/keyboard.json +++ b/keyboards/1upkeyboards/sweet16v2/kb2040/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/1upkeyboards/sweet16v2/pro_micro/keyboard.json b/keyboards/1upkeyboards/sweet16v2/pro_micro/keyboard.json index d46f723a17..d8ff291e69 100644 --- a/keyboards/1upkeyboards/sweet16v2/pro_micro/keyboard.json +++ b/keyboards/1upkeyboards/sweet16v2/pro_micro/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/2key2crawl/keyboard.json b/keyboards/2key2crawl/keyboard.json index fec55c811a..179c9d59ad 100644 --- a/keyboards/2key2crawl/keyboard.json +++ b/keyboards/2key2crawl/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "2Key2Crawl", "manufacturer": "WoodKeys.click", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "encoder": true, "extrakey": false, diff --git a/keyboards/30wer/keyboard.json b/keyboards/30wer/keyboard.json index 606c13f7aa..d5d4c5fa56 100644 --- a/keyboards/30wer/keyboard.json +++ b/keyboards/30wer/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "30wer", "manufacturer": "8o7wer", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x1234", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/3keyecosystem/2key2/keyboard.json b/keyboards/3keyecosystem/2key2/keyboard.json index 5c77fdf6ae..2b4659f252 100644 --- a/keyboards/3keyecosystem/2key2/keyboard.json +++ b/keyboards/3keyecosystem/2key2/keyboard.json @@ -69,8 +69,6 @@ "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/40percentclub/25/keyboard.json b/keyboards/40percentclub/25/keyboard.json index e23d0578c3..ceaff11454 100644 --- a/keyboards/40percentclub/25/keyboard.json +++ b/keyboards/40percentclub/25/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "The 5x5 Keyboard", "manufacturer": "di0ib", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4025", diff --git a/keyboards/40percentclub/4pack/keyboard.json b/keyboards/40percentclub/4pack/keyboard.json index a114e97dbb..0b26e75b92 100644 --- a/keyboards/40percentclub/4pack/keyboard.json +++ b/keyboards/40percentclub/4pack/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "4pack", "manufacturer": "40percentclub", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4025", @@ -17,8 +16,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/40percentclub/4x4/keyboard.json b/keyboards/40percentclub/4x4/keyboard.json index 735a3865da..cd5e0f4c0c 100644 --- a/keyboards/40percentclub/4x4/keyboard.json +++ b/keyboards/40percentclub/4x4/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "The 4x4 Keyboard", "manufacturer": "di0ib", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4025", diff --git a/keyboards/40percentclub/5x5/keyboard.json b/keyboards/40percentclub/5x5/keyboard.json index 039d9fe47b..1a76644489 100644 --- a/keyboards/40percentclub/5x5/keyboard.json +++ b/keyboards/40percentclub/5x5/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "The 5x5 Keyboard", "manufacturer": "di0ib", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4025", diff --git a/keyboards/40percentclub/6lit/keyboard.json b/keyboards/40percentclub/6lit/keyboard.json index 52a8914d7d..96644a7a44 100644 --- a/keyboards/40percentclub/6lit/keyboard.json +++ b/keyboards/40percentclub/6lit/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "The 6lit Macropad", "manufacturer": "di0ib", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4025", diff --git a/keyboards/40percentclub/foobar/keyboard.json b/keyboards/40percentclub/foobar/keyboard.json index ec568b2382..c0a77c4e9a 100644 --- a/keyboards/40percentclub/foobar/keyboard.json +++ b/keyboards/40percentclub/foobar/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "The foobar Keyboard", "manufacturer": "di0ib", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4025", diff --git a/keyboards/40percentclub/gherkin/info.json b/keyboards/40percentclub/gherkin/info.json index 0c9f609cdc..644001bc05 100644 --- a/keyboards/40percentclub/gherkin/info.json +++ b/keyboards/40percentclub/gherkin/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Gherkin", "manufacturer": "40 Percent Club", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4025", diff --git a/keyboards/40percentclub/half_n_half/keyboard.json b/keyboards/40percentclub/half_n_half/keyboard.json index 4f18d235b2..21ca55f162 100644 --- a/keyboards/40percentclub/half_n_half/keyboard.json +++ b/keyboards/40percentclub/half_n_half/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "half_n_half", "manufacturer": "di0ib", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4025", diff --git a/keyboards/40percentclub/i75/info.json b/keyboards/40percentclub/i75/info.json index a7124adec2..197667cba5 100644 --- a/keyboards/40percentclub/i75/info.json +++ b/keyboards/40percentclub/i75/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "i75", "manufacturer": "di0ib", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4025", diff --git a/keyboards/40percentclub/luddite/keyboard.json b/keyboards/40percentclub/luddite/keyboard.json index a9f79d7369..812bbdc7aa 100644 --- a/keyboards/40percentclub/luddite/keyboard.json +++ b/keyboards/40percentclub/luddite/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Luddite", "manufacturer": "di0ib", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4025", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/40percentclub/mf68/keyboard.json b/keyboards/40percentclub/mf68/keyboard.json index 45585d5e47..daeab7d4de 100644 --- a/keyboards/40percentclub/mf68/keyboard.json +++ b/keyboards/40percentclub/mf68/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MF68", "manufacturer": "di0ib", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4025", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/40percentclub/nano/keyboard.json b/keyboards/40percentclub/nano/keyboard.json index 547aed16f9..4d797ed076 100644 --- a/keyboards/40percentclub/nano/keyboard.json +++ b/keyboards/40percentclub/nano/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Nano", "manufacturer": "di0ib", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4025", @@ -30,8 +29,6 @@ "bootloader": "caterina", "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/40percentclub/nein/keyboard.json b/keyboards/40percentclub/nein/keyboard.json index 9e1711f71e..267e708038 100644 --- a/keyboards/40percentclub/nein/keyboard.json +++ b/keyboards/40percentclub/nein/keyboard.json @@ -12,8 +12,6 @@ "bootloader": "caterina", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/40percentclub/nori/keyboard.json b/keyboards/40percentclub/nori/keyboard.json index 968e74e19e..feb66f9501 100644 --- a/keyboards/40percentclub/nori/keyboard.json +++ b/keyboards/40percentclub/nori/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "The nori Keyboard", "manufacturer": "di0ib", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4025", diff --git a/keyboards/40percentclub/polyandry/info.json b/keyboards/40percentclub/polyandry/info.json index 49b8bedbe3..bddfe9e556 100644 --- a/keyboards/40percentclub/polyandry/info.json +++ b/keyboards/40percentclub/polyandry/info.json @@ -1,12 +1,9 @@ { "keyboard_name": "Polypad", "manufacturer": "di0ib", - "url": "", "maintainer": "QMK", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/40percentclub/sixpack/keyboard.json b/keyboards/40percentclub/sixpack/keyboard.json index 059c9de091..9bed19df3f 100644 --- a/keyboards/40percentclub/sixpack/keyboard.json +++ b/keyboards/40percentclub/sixpack/keyboard.json @@ -24,8 +24,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/40percentclub/tomato/keyboard.json b/keyboards/40percentclub/tomato/keyboard.json index c0b526cbc6..c11b747f24 100644 --- a/keyboards/40percentclub/tomato/keyboard.json +++ b/keyboards/40percentclub/tomato/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Tomato", "manufacturer": "40 Percent Club", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4025", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/40percentclub/ut47/keyboard.json b/keyboards/40percentclub/ut47/keyboard.json index 62e4a940a1..00c8edef69 100644 --- a/keyboards/40percentclub/ut47/keyboard.json +++ b/keyboards/40percentclub/ut47/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ut47", "manufacturer": "40percent.club", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4025", diff --git a/keyboards/45_ats/keyboard.json b/keyboards/45_ats/keyboard.json index 5e5465f264..17ef036999 100644 --- a/keyboards/45_ats/keyboard.json +++ b/keyboards/45_ats/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "45ATS", "manufacturer": "Abec13", - "url": "", "maintainer": "The-Royal", "usb": { "vid": "0xAB13", diff --git a/keyboards/4pplet/aekiso60/info.json b/keyboards/4pplet/aekiso60/info.json index 80d5ab233d..50dd5e55df 100644 --- a/keyboards/4pplet/aekiso60/info.json +++ b/keyboards/4pplet/aekiso60/info.json @@ -1,6 +1,5 @@ { "manufacturer": "4pplet", - "url": "", "maintainer": "4pplet", "usb": { "vid": "0x4444" diff --git a/keyboards/4pplet/aekiso60/rev_a/keyboard.json b/keyboards/4pplet/aekiso60/rev_a/keyboard.json index 5e236adc9a..4fcf8a83f0 100644 --- a/keyboards/4pplet/aekiso60/rev_a/keyboard.json +++ b/keyboards/4pplet/aekiso60/rev_a/keyboard.json @@ -26,8 +26,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/4pplet/bootleg/rev_a/keyboard.json b/keyboards/4pplet/bootleg/rev_a/keyboard.json index 10aa3de678..18ded6df53 100644 --- a/keyboards/4pplet/bootleg/rev_a/keyboard.json +++ b/keyboards/4pplet/bootleg/rev_a/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/4pplet/perk60_iso/rev_a/keyboard.json b/keyboards/4pplet/perk60_iso/rev_a/keyboard.json index 56e7a25de4..8d3a519a87 100644 --- a/keyboards/4pplet/perk60_iso/rev_a/keyboard.json +++ b/keyboards/4pplet/perk60_iso/rev_a/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Perk60 ISO Rev A", "manufacturer": "4pplet", - "url": "", "maintainer": "4pplet", "usb": { "vid": "0x4444", @@ -42,8 +41,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/4pplet/perk60_iso/rev_a/rev_a.c b/keyboards/4pplet/perk60_iso/rev_a/rev_a.c index 2de3acc60d..c4ab064cb2 100644 --- a/keyboards/4pplet/perk60_iso/rev_a/rev_a.c +++ b/keyboards/4pplet/perk60_iso/rev_a/rev_a.c @@ -14,7 +14,20 @@ 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 "rev_a.h" +#include "quantum.h" + +#ifndef CAPS_LOCK_ENABLE +# define CAPS_LOCK_ENABLE true +#endif + +#ifndef CAPS_LOCK_COLOR +# define CAPS_LOCK_COLOR RGB_RED +#endif + +#ifndef CAPS_LED_GROUP +// change what leds to target, for example LED_FLAG_KEYLIGHT for alpas or LED_FLAG_MODIFIER for modifiers +# define CAPS_LED_GROUP LED_FLAG_INDICATOR +#endif #ifdef RGB_MATRIX_ENABLE const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = { diff --git a/keyboards/4pplet/perk60_iso/rev_a/rev_a.h b/keyboards/4pplet/perk60_iso/rev_a/rev_a.h deleted file mode 100644 index 2f4fa7531a..0000000000 --- a/keyboards/4pplet/perk60_iso/rev_a/rev_a.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2022 Stefan Sundin "4pplet" <[email protected]> - -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/>. -*/ -#pragma once - -#define CAPS_LOCK_ENABLE true -#define CAPS_LOCK_COLOR RGB_RED -#define CAPS_LED_GROUP LED_FLAG_INDICATOR // change what leds to target, for example LED_FLAG_KEYLIGHT for alpas or LED_FLAG_MODIFIER for modifiers - -#include "quantum.h" diff --git a/keyboards/4pplet/steezy60/rev_a/keyboard.json b/keyboards/4pplet/steezy60/rev_a/keyboard.json index bbc3d1601b..bab6a0a9a8 100644 --- a/keyboards/4pplet/steezy60/rev_a/keyboard.json +++ b/keyboards/4pplet/steezy60/rev_a/keyboard.json @@ -31,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/4pplet/steezy60/rev_b/keyboard.json b/keyboards/4pplet/steezy60/rev_b/keyboard.json index 810f7f8cb9..5f1be975ce 100644 --- a/keyboards/4pplet/steezy60/rev_b/keyboard.json +++ b/keyboards/4pplet/steezy60/rev_b/keyboard.json @@ -27,8 +27,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/4pplet/unextended_std/rev_a/keyboard.json b/keyboards/4pplet/unextended_std/rev_a/keyboard.json index 1b1909854a..be89861e25 100644 --- a/keyboards/4pplet/unextended_std/rev_a/keyboard.json +++ b/keyboards/4pplet/unextended_std/rev_a/keyboard.json @@ -19,8 +19,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgblight": true, "key_lock": true diff --git a/keyboards/4pplet/waffling60/rev_a/keyboard.json b/keyboards/4pplet/waffling60/rev_a/keyboard.json index cbb24bd56a..6a3c2ea0ae 100644 --- a/keyboards/4pplet/waffling60/rev_a/keyboard.json +++ b/keyboards/4pplet/waffling60/rev_a/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/4pplet/waffling60/rev_b/keyboard.json b/keyboards/4pplet/waffling60/rev_b/keyboard.json index 54e51b388b..158f4ecee5 100644 --- a/keyboards/4pplet/waffling60/rev_b/keyboard.json +++ b/keyboards/4pplet/waffling60/rev_b/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/4pplet/waffling60/rev_b/rev_b.c b/keyboards/4pplet/waffling60/rev_b/rev_b.c index c03f3630e6..8923ba6f7d 100644 --- a/keyboards/4pplet/waffling60/rev_b/rev_b.c +++ b/keyboards/4pplet/waffling60/rev_b/rev_b.c @@ -14,7 +14,11 @@ 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 "rev_b.h" +#include "quantum.h" + +#ifndef CAPS_LOCK_ENABLE +# define CAPS_LOCK_ENABLE true +#endif bool led_update_kb(led_t led_state) { bool res = led_update_user(led_state); diff --git a/keyboards/4pplet/waffling60/rev_b/rev_b.h b/keyboards/4pplet/waffling60/rev_b/rev_b.h deleted file mode 100644 index 57a4964202..0000000000 --- a/keyboards/4pplet/waffling60/rev_b/rev_b.h +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2020 Stefan Sundin "4pplet" <[email protected]> - -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/>. -*/ -#pragma once - -#define CAPS_LOCK_ENABLE true -//#define CAPS_LOCK_COLOR HSV_ORANGE - -#include "quantum.h" diff --git a/keyboards/4pplet/waffling60/rev_c/keyboard.json b/keyboards/4pplet/waffling60/rev_c/keyboard.json index a7c23cc349..8f3fd7da9a 100644 --- a/keyboards/4pplet/waffling60/rev_c/keyboard.json +++ b/keyboards/4pplet/waffling60/rev_c/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/4pplet/waffling60/rev_c/rev_c.c b/keyboards/4pplet/waffling60/rev_c/rev_c.c index fc7e99b601..f7f78f679d 100644 --- a/keyboards/4pplet/waffling60/rev_c/rev_c.c +++ b/keyboards/4pplet/waffling60/rev_c/rev_c.c @@ -14,7 +14,11 @@ 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 "rev_c.h" +#include "quantum.h" + +#ifndef CAPS_LOCK_ENABLE +# define CAPS_LOCK_ENABLE true +#endif bool led_update_kb(led_t led_state) { bool res = led_update_user(led_state); diff --git a/keyboards/4pplet/waffling60/rev_c/rev_c.h b/keyboards/4pplet/waffling60/rev_c/rev_c.h deleted file mode 100644 index 641b663336..0000000000 --- a/keyboards/4pplet/waffling60/rev_c/rev_c.h +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2022 Stefan Sundin "4pplet" <[email protected]> - -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/>. -*/ -#pragma once - -#define CAPS_LOCK_ENABLE true -//#define CAPS_LOCK_COLOR HSV_ORANGE - -#include "quantum.h" diff --git a/keyboards/4pplet/waffling60/rev_d/rev_d.c b/keyboards/4pplet/waffling60/rev_d/rev_d.c index 2e0511459d..f7f78f679d 100644 --- a/keyboards/4pplet/waffling60/rev_d/rev_d.c +++ b/keyboards/4pplet/waffling60/rev_d/rev_d.c @@ -14,7 +14,11 @@ 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 "rev_d.h" +#include "quantum.h" + +#ifndef CAPS_LOCK_ENABLE +# define CAPS_LOCK_ENABLE true +#endif bool led_update_kb(led_t led_state) { bool res = led_update_user(led_state); diff --git a/keyboards/4pplet/waffling60/rev_d/rev_d.h b/keyboards/4pplet/waffling60/rev_d/rev_d.h deleted file mode 100644 index 641b663336..0000000000 --- a/keyboards/4pplet/waffling60/rev_d/rev_d.h +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2022 Stefan Sundin "4pplet" <[email protected]> - -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/>. -*/ -#pragma once - -#define CAPS_LOCK_ENABLE true -//#define CAPS_LOCK_COLOR HSV_ORANGE - -#include "quantum.h" diff --git a/keyboards/4pplet/waffling60/rev_e/keyboard.json b/keyboards/4pplet/waffling60/rev_e/keyboard.json index 9adf6dada3..aed977061f 100644 --- a/keyboards/4pplet/waffling60/rev_e/keyboard.json +++ b/keyboards/4pplet/waffling60/rev_e/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "key_lock": true, "mousekey": true, diff --git a/keyboards/4pplet/waffling60/rev_e/rev_e.c b/keyboards/4pplet/waffling60/rev_e/rev_e.c index 81941d54be..ca71947bfe 100644 --- a/keyboards/4pplet/waffling60/rev_e/rev_e.c +++ b/keyboards/4pplet/waffling60/rev_e/rev_e.c @@ -14,7 +14,15 @@ 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 "rev_e.h" +#include "quantum.h" + +#ifndef CAPS_LOCK_ENABLE +# define CAPS_LOCK_ENABLE true +#endif + +#ifndef CAPS_LOCK_COLOR +# define CAPS_LOCK_COLOR HSV_GREEN +#endif void keyboard_pre_init_kb(void) { rgblight_set_effect_range(0, 16); diff --git a/keyboards/4pplet/waffling60/rev_e/rev_e.h b/keyboards/4pplet/waffling60/rev_e/rev_e.h deleted file mode 100644 index 61ebac1912..0000000000 --- a/keyboards/4pplet/waffling60/rev_e/rev_e.h +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2022 Stefan Sundin "4pplet" <[email protected]> - -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/>. -*/ -#pragma once - -#include "quantum.h" - -#define CAPS_LOCK_ENABLE true -#define CAPS_LOCK_COLOR HSV_GREEN diff --git a/keyboards/4pplet/waffling60/rev_e_ansi/keyboard.json b/keyboards/4pplet/waffling60/rev_e_ansi/keyboard.json index 15d3c7cfe9..0dab5e799e 100644 --- a/keyboards/4pplet/waffling60/rev_e_ansi/keyboard.json +++ b/keyboards/4pplet/waffling60/rev_e_ansi/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "key_lock": true, "mousekey": true, diff --git a/keyboards/4pplet/waffling60/rev_e_iso/keyboard.json b/keyboards/4pplet/waffling60/rev_e_iso/keyboard.json index a9bfad4d62..41bb967bdc 100644 --- a/keyboards/4pplet/waffling60/rev_e_iso/keyboard.json +++ b/keyboards/4pplet/waffling60/rev_e_iso/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "key_lock": true, "mousekey": true, diff --git a/keyboards/4pplet/waffling80/info.json b/keyboards/4pplet/waffling80/info.json index 72fcd4615b..c003b16fed 100644 --- a/keyboards/4pplet/waffling80/info.json +++ b/keyboards/4pplet/waffling80/info.json @@ -1,6 +1,5 @@ { "manufacturer": "4pplet", - "url": "", "maintainer": "4pplet", "usb": { "vid": "0x4444" diff --git a/keyboards/4pplet/waffling80/rev_a/keyboard.json b/keyboards/4pplet/waffling80/rev_a/keyboard.json index 157cefa536..0623b7ddaa 100644 --- a/keyboards/4pplet/waffling80/rev_a/keyboard.json +++ b/keyboards/4pplet/waffling80/rev_a/keyboard.json @@ -14,8 +14,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/4pplet/waffling80/rev_a/rev_a.c b/keyboards/4pplet/waffling80/rev_a/rev_a.c index d1032e7c6c..9983830548 100644 --- a/keyboards/4pplet/waffling80/rev_a/rev_a.c +++ b/keyboards/4pplet/waffling80/rev_a/rev_a.c @@ -14,7 +14,19 @@ 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 "rev_a.h" +#include "quantum.h" + +#ifndef CAPS_LOCK_ENABLE +# define CAPS_LOCK_ENABLE 1 +#endif + +#ifndef SCROLL_LOCK_ENABLE +# define SCROLL_LOCK_ENABLE 1 +#endif + +// If colors are defined, they will be static. If not defined, color for indicators can be set in VIA. +//#define CAPS_LOCK_COLOR HSV_GREEN +//#define SCROLL_LOCK_COLOR HSV_GREEN bool led_update_kb(led_t led_state) { bool res = led_update_user(led_state); diff --git a/keyboards/4pplet/waffling80/rev_a/rev_a.h b/keyboards/4pplet/waffling80/rev_a/rev_a.h deleted file mode 100644 index c8d4c8b971..0000000000 --- a/keyboards/4pplet/waffling80/rev_a/rev_a.h +++ /dev/null @@ -1,26 +0,0 @@ -/* -Copyright 2022 Stefan Sundin "4pplet" <[email protected]> - -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/>. -*/ -#pragma once - -#define CAPS_LOCK_ENABLE 1 -#define SCROLL_LOCK_ENABLE 1 - -// If colors are defined, they will be static. If not defined, color for incicators can be set in VIA. -//#define CAPS_LOCK_COLOR HSV_GREEN -//#define SCROLL_LOCK_COLOR HSV_GREEN - -#include "quantum.h" diff --git a/keyboards/4pplet/waffling80/rev_b/rev_b.c b/keyboards/4pplet/waffling80/rev_b/rev_b.c index 15e44b93a1..9983830548 100644 --- a/keyboards/4pplet/waffling80/rev_b/rev_b.c +++ b/keyboards/4pplet/waffling80/rev_b/rev_b.c @@ -14,7 +14,19 @@ 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 "rev_b.h" +#include "quantum.h" + +#ifndef CAPS_LOCK_ENABLE +# define CAPS_LOCK_ENABLE 1 +#endif + +#ifndef SCROLL_LOCK_ENABLE +# define SCROLL_LOCK_ENABLE 1 +#endif + +// If colors are defined, they will be static. If not defined, color for indicators can be set in VIA. +//#define CAPS_LOCK_COLOR HSV_GREEN +//#define SCROLL_LOCK_COLOR HSV_GREEN bool led_update_kb(led_t led_state) { bool res = led_update_user(led_state); diff --git a/keyboards/4pplet/waffling80/rev_b/rev_b.h b/keyboards/4pplet/waffling80/rev_b/rev_b.h deleted file mode 100644 index c8d4c8b971..0000000000 --- a/keyboards/4pplet/waffling80/rev_b/rev_b.h +++ /dev/null @@ -1,26 +0,0 @@ -/* -Copyright 2022 Stefan Sundin "4pplet" <[email protected]> - -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/>. -*/ -#pragma once - -#define CAPS_LOCK_ENABLE 1 -#define SCROLL_LOCK_ENABLE 1 - -// If colors are defined, they will be static. If not defined, color for incicators can be set in VIA. -//#define CAPS_LOCK_COLOR HSV_GREEN -//#define SCROLL_LOCK_COLOR HSV_GREEN - -#include "quantum.h" diff --git a/keyboards/4pplet/waffling80/rev_b_ansi/rev_b_ansi.c b/keyboards/4pplet/waffling80/rev_b_ansi/rev_b_ansi.c index 9e617eaa7a..2cadd18a27 100644 --- a/keyboards/4pplet/waffling80/rev_b_ansi/rev_b_ansi.c +++ b/keyboards/4pplet/waffling80/rev_b_ansi/rev_b_ansi.c @@ -14,7 +14,19 @@ 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 "rev_b_ansi.h" +#include "quantum.h" + +#ifndef CAPS_LOCK_ENABLE +# define CAPS_LOCK_ENABLE 1 +#endif + +#ifndef SCROLL_LOCK_ENABLE +# define SCROLL_LOCK_ENABLE 1 +#endif + +// If colors are defined, they will be static. If not defined, color for indicators can be set in VIA. +//#define CAPS_LOCK_COLOR HSV_GREEN +//#define SCROLL_LOCK_COLOR HSV_GREEN bool led_update_kb(led_t led_state) { bool res = led_update_user(led_state); diff --git a/keyboards/4pplet/waffling80/rev_b_ansi/rev_b_ansi.h b/keyboards/4pplet/waffling80/rev_b_ansi/rev_b_ansi.h deleted file mode 100644 index c8d4c8b971..0000000000 --- a/keyboards/4pplet/waffling80/rev_b_ansi/rev_b_ansi.h +++ /dev/null @@ -1,26 +0,0 @@ -/* -Copyright 2022 Stefan Sundin "4pplet" <[email protected]> - -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/>. -*/ -#pragma once - -#define CAPS_LOCK_ENABLE 1 -#define SCROLL_LOCK_ENABLE 1 - -// If colors are defined, they will be static. If not defined, color for incicators can be set in VIA. -//#define CAPS_LOCK_COLOR HSV_GREEN -//#define SCROLL_LOCK_COLOR HSV_GREEN - -#include "quantum.h" diff --git a/keyboards/4pplet/yakiimo/rev_a/keyboard.json b/keyboards/4pplet/yakiimo/rev_a/keyboard.json index f22f67ac6a..a031a1438a 100644 --- a/keyboards/4pplet/yakiimo/rev_a/keyboard.json +++ b/keyboards/4pplet/yakiimo/rev_a/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/5keys/keyboard.json b/keyboards/5keys/keyboard.json index 7a40d1014d..7282db2922 100644 --- a/keyboards/5keys/keyboard.json +++ b/keyboards/5keys/keyboard.json @@ -14,7 +14,6 @@ ["F4","F5","F6","F7","B1"] ] }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/7c8/framework/keyboard.json b/keyboards/7c8/framework/keyboard.json index 33f9cfc591..a6d1f8e9e3 100644 --- a/keyboards/7c8/framework/keyboard.json +++ b/keyboards/7c8/framework/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Framework", "manufacturer": "7c8", - "url": "", "maintainer": "stevennguyen", "usb": { "vid": "0x77C8", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "leader": true, diff --git a/keyboards/9key/keyboard.json b/keyboards/9key/keyboard.json index c1e95e3f08..609989ff5c 100644 --- a/keyboards/9key/keyboard.json +++ b/keyboards/9key/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "9Key", "manufacturer": "Bishop Keyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -16,8 +15,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/a_jazz/akc084/keyboard.json b/keyboards/a_jazz/akc084/keyboard.json index a8290ea75f..85a2c50bc9 100644 --- a/keyboards/a_jazz/akc084/keyboard.json +++ b/keyboards/a_jazz/akc084/keyboard.json @@ -11,7 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "encoder": true, "extrakey": true, diff --git a/keyboards/abatskeyboardclub/nayeon/keyboard.json b/keyboards/abatskeyboardclub/nayeon/keyboard.json index a3fac207f4..9d56e3246b 100644 --- a/keyboards/abatskeyboardclub/nayeon/keyboard.json +++ b/keyboards/abatskeyboardclub/nayeon/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Nayeon", "manufacturer": "Abats Keyboard Club", - "url": "", "maintainer": "ramonimbao", "layout_aliases": { "LAYOUT_ansi": "LAYOUT_tkl_f13_ansi_tsangan", @@ -11,8 +10,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": false, "rgb_matrix": true }, diff --git a/keyboards/abstract/ellipse/rev1/keyboard.json b/keyboards/abstract/ellipse/rev1/keyboard.json index 8e38f29d56..eb84a27fd4 100644 --- a/keyboards/abstract/ellipse/rev1/keyboard.json +++ b/keyboards/abstract/ellipse/rev1/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/acekeyboard/titan60/keyboard.json b/keyboards/acekeyboard/titan60/keyboard.json index 4446927ab8..6995cefcce 100644 --- a/keyboards/acekeyboard/titan60/keyboard.json +++ b/keyboards/acekeyboard/titan60/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/acheron/apollo/87h/delta/keyboard.json b/keyboards/acheron/apollo/87h/delta/keyboard.json index 5d01c1b8f7..f5bdf28d96 100644 --- a/keyboards/acheron/apollo/87h/delta/keyboard.json +++ b/keyboards/acheron/apollo/87h/delta/keyboard.json @@ -61,8 +61,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/acheron/apollo/87h/info.json b/keyboards/acheron/apollo/87h/info.json index ac47f594b5..41606da15f 100644 --- a/keyboards/acheron/apollo/87h/info.json +++ b/keyboards/acheron/apollo/87h/info.json @@ -1,6 +1,5 @@ { "manufacturer": "AcheronProject", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x4150" diff --git a/keyboards/acheron/apollo/87htsc/keyboard.json b/keyboards/acheron/apollo/87htsc/keyboard.json index 55229706b1..4b2ff1ad66 100644 --- a/keyboards/acheron/apollo/87htsc/keyboard.json +++ b/keyboards/acheron/apollo/87htsc/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Apollo87H-T-SC", "manufacturer": "AcheronProject", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x4150", @@ -65,8 +64,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/acheron/apollo/88htsc/keyboard.json b/keyboards/acheron/apollo/88htsc/keyboard.json index 9b9482874f..165c8d76eb 100644 --- a/keyboards/acheron/apollo/88htsc/keyboard.json +++ b/keyboards/acheron/apollo/88htsc/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Apollo88H-T-SC", "manufacturer": "AcheronProject", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x4150", @@ -65,8 +64,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/acheron/athena/alpha/keyboard.json b/keyboards/acheron/athena/alpha/keyboard.json index 7e29cdc037..3a64456b51 100644 --- a/keyboards/acheron/athena/alpha/keyboard.json +++ b/keyboards/acheron/athena/alpha/keyboard.json @@ -10,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/acheron/athena/beta/keyboard.json b/keyboards/acheron/athena/beta/keyboard.json index ba96b20151..539c28aac2 100644 --- a/keyboards/acheron/athena/beta/keyboard.json +++ b/keyboards/acheron/athena/beta/keyboard.json @@ -10,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/acheron/athena/info.json b/keyboards/acheron/athena/info.json index 4f9d3b61e6..e10cb288f0 100644 --- a/keyboards/acheron/athena/info.json +++ b/keyboards/acheron/athena/info.json @@ -1,6 +1,5 @@ { "manufacturer": "AcheronProject", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0xAC11" diff --git a/keyboards/acheron/austin/keyboard.json b/keyboards/acheron/austin/keyboard.json index a3df5dd75d..140e398cce 100755 --- a/keyboards/acheron/austin/keyboard.json +++ b/keyboards/acheron/austin/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Austin", "manufacturer": "DriftMechanics", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xAC11", diff --git a/keyboards/acheron/elongate/beta/keyboard.json b/keyboards/acheron/elongate/beta/keyboard.json index d15f178991..d998d80506 100644 --- a/keyboards/acheron/elongate/beta/keyboard.json +++ b/keyboards/acheron/elongate/beta/keyboard.json @@ -35,7 +35,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/acheron/elongate/delta/keyboard.json b/keyboards/acheron/elongate/delta/keyboard.json index 1c6d0927d6..1cc2317b54 100644 --- a/keyboards/acheron/elongate/delta/keyboard.json +++ b/keyboards/acheron/elongate/delta/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/acheron/lasgweloth/keyboard.json b/keyboards/acheron/lasgweloth/keyboard.json index 35d30e89b2..85769d0732 100644 --- a/keyboards/acheron/lasgweloth/keyboard.json +++ b/keyboards/acheron/lasgweloth/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Lasgweloth", "manufacturer": "AcheronProject", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x4150", diff --git a/keyboards/acheron/shark/beta/keyboard.json b/keyboards/acheron/shark/beta/keyboard.json index 2433f61fec..2281c24b30 100644 --- a/keyboards/acheron/shark/beta/keyboard.json +++ b/keyboards/acheron/shark/beta/keyboard.json @@ -8,7 +8,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/acheron/themis/87h/keyboard.json b/keyboards/acheron/themis/87h/keyboard.json index 488cb324c1..d94f7b0ff3 100644 --- a/keyboards/acheron/themis/87h/keyboard.json +++ b/keyboards/acheron/themis/87h/keyboard.json @@ -15,7 +15,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, "rgblight": true, "nkro": true }, diff --git a/keyboards/acheron/themis/87htsc/keyboard.json b/keyboards/acheron/themis/87htsc/keyboard.json index 46cdb09247..460c1f8f8e 100644 --- a/keyboards/acheron/themis/87htsc/keyboard.json +++ b/keyboards/acheron/themis/87htsc/keyboard.json @@ -15,7 +15,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, "rgblight": true, "nkro": true }, diff --git a/keyboards/acheron/themis/88htsc/keyboard.json b/keyboards/acheron/themis/88htsc/keyboard.json index 1e193d2661..5449461e15 100644 --- a/keyboards/acheron/themis/88htsc/keyboard.json +++ b/keyboards/acheron/themis/88htsc/keyboard.json @@ -15,7 +15,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, "rgblight": true, "nkro": true }, diff --git a/keyboards/acheron/themis/info.json b/keyboards/acheron/themis/info.json index 4f9d3b61e6..e10cb288f0 100644 --- a/keyboards/acheron/themis/info.json +++ b/keyboards/acheron/themis/info.json @@ -1,6 +1,5 @@ { "manufacturer": "AcheronProject", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0xAC11" diff --git a/keyboards/ada/ada1800mini/keyboard.json b/keyboards/ada/ada1800mini/keyboard.json index 80e8ee64aa..37c0be1582 100644 --- a/keyboards/ada/ada1800mini/keyboard.json +++ b/keyboards/ada/ada1800mini/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ada1800mini", "manufacturer": "Ada", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xADA0", diff --git a/keyboards/ada/infinity81/keyboard.json b/keyboards/ada/infinity81/keyboard.json index 40c5bd2f18..d2fc2ff024 100644 --- a/keyboards/ada/infinity81/keyboard.json +++ b/keyboards/ada/infinity81/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "infinity81", "manufacturer": "Ada", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xADA0", @@ -31,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/adelheid/keyboard.json b/keyboards/adelheid/keyboard.json index 7766a44a8d..4247a06b21 100644 --- a/keyboards/adelheid/keyboard.json +++ b/keyboards/adelheid/keyboard.json @@ -12,7 +12,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/adkb96/rev1/keyboard.json b/keyboards/adkb96/rev1/keyboard.json index 7cf92f1516..5def3c9da3 100644 --- a/keyboards/adkb96/rev1/keyboard.json +++ b/keyboards/adkb96/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ADKB96", "manufacturer": "Bit Trade One", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x00A5", diff --git a/keyboards/adm42/rev4/keyboard.json b/keyboards/adm42/rev4/keyboard.json index efb0eea029..761364d8a7 100644 --- a/keyboards/adm42/rev4/keyboard.json +++ b/keyboards/adm42/rev4/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -82,7 +80,6 @@ {"matrix": [0, 10], "x": 194, "y": 13, "flags": 4}, {"matrix": [0, 11], "x": 210, "y": 11, "flags": 4} ], - "led_flush_limit": 16, "led_process_limit": 21, "max_brightness": 170, "sat_steps": 24, diff --git a/keyboards/adpenrose/akemipad/keyboard.json b/keyboards/adpenrose/akemipad/keyboard.json index 50003fbb5f..2dcfed3b5a 100644 --- a/keyboards/adpenrose/akemipad/keyboard.json +++ b/keyboards/adpenrose/akemipad/keyboard.json @@ -23,8 +23,6 @@ "features": { "audio": true, "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/adpenrose/kintsugi/keyboard.json b/keyboards/adpenrose/kintsugi/keyboard.json index 46504298f8..ee4de0e267 100644 --- a/keyboards/adpenrose/kintsugi/keyboard.json +++ b/keyboards/adpenrose/kintsugi/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/adpenrose/obi/keyboard.json b/keyboards/adpenrose/obi/keyboard.json index 8c1428ca81..e02a331434 100644 --- a/keyboards/adpenrose/obi/keyboard.json +++ b/keyboards/adpenrose/obi/keyboard.json @@ -29,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/adpenrose/shisaku/keyboard.json b/keyboards/adpenrose/shisaku/keyboard.json index 1382ee3b62..62bdd42563 100644 --- a/keyboards/adpenrose/shisaku/keyboard.json +++ b/keyboards/adpenrose/shisaku/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/aeboards/aegis/keyboard.json b/keyboards/aeboards/aegis/keyboard.json index 26f5f2a0c1..fcebbf4bc5 100644 --- a/keyboards/aeboards/aegis/keyboard.json +++ b/keyboards/aeboards/aegis/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Aegis", "manufacturer": "AEboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4145", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/aeboards/constellation/rev1/keyboard.json b/keyboards/aeboards/constellation/rev1/keyboard.json index 5a43568d57..4c21a8f3b9 100644 --- a/keyboards/aeboards/constellation/rev1/keyboard.json +++ b/keyboards/aeboards/constellation/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Constellation Rev1", "manufacturer": "AEBoards", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x4145", diff --git a/keyboards/aeboards/constellation/rev2/keyboard.json b/keyboards/aeboards/constellation/rev2/keyboard.json index f296b523e0..e4add7a63a 100644 --- a/keyboards/aeboards/constellation/rev2/keyboard.json +++ b/keyboards/aeboards/constellation/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Constellation Rev2", "manufacturer": "AEBoards", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x4145", diff --git a/keyboards/aeboards/constellation/rev3/keyboard.json b/keyboards/aeboards/constellation/rev3/keyboard.json index ab39641b74..306561409c 100644 --- a/keyboards/aeboards/constellation/rev3/keyboard.json +++ b/keyboards/aeboards/constellation/rev3/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Constellation Rev3", "manufacturer": "AEBoards", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x4145", diff --git a/keyboards/aeboards/ext65/info.json b/keyboards/aeboards/ext65/info.json index 3f4b0bbc00..e4c57bd144 100644 --- a/keyboards/aeboards/ext65/info.json +++ b/keyboards/aeboards/ext65/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ext65", "manufacturer": "AEBoards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4145" diff --git a/keyboards/aeboards/ext65/rev1/keyboard.json b/keyboards/aeboards/ext65/rev1/keyboard.json index 1d105505e5..80370f6045 100644 --- a/keyboards/aeboards/ext65/rev1/keyboard.json +++ b/keyboards/aeboards/ext65/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ext65 Rev1", "manufacturer": "AEBoards", - "url": "", "maintainer": "qmk", "usb": { "pid": "0xAE65", diff --git a/keyboards/aeboards/ext65/rev2/keyboard.json b/keyboards/aeboards/ext65/rev2/keyboard.json index ab7cceeefb..ca2777d36c 100644 --- a/keyboards/aeboards/ext65/rev2/keyboard.json +++ b/keyboards/aeboards/ext65/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ext65 Rev2", "manufacturer": "AEBoards", - "url": "", "maintainer": "qmk", "usb": { "pid": "0xA652", diff --git a/keyboards/aeboards/ext65/rev3/keyboard.json b/keyboards/aeboards/ext65/rev3/keyboard.json index 8c8051fc44..867e46e519 100644 --- a/keyboards/aeboards/ext65/rev3/keyboard.json +++ b/keyboards/aeboards/ext65/rev3/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ext65 Rev3", "manufacturer": "AEBoards", - "url": "", "maintainer": "qmk", "usb": { "pid": "0xA653", diff --git a/keyboards/aeboards/satellite/rev1/keyboard.json b/keyboards/aeboards/satellite/rev1/keyboard.json index 8b90704efa..f9355171fb 100644 --- a/keyboards/aeboards/satellite/rev1/keyboard.json +++ b/keyboards/aeboards/satellite/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Satellite Rev1", "manufacturer": "AEBoards", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x4145", diff --git a/keyboards/afternoonlabs/gust/rev1/keyboard.json b/keyboards/afternoonlabs/gust/rev1/keyboard.json index 93ad60ad7d..7f22279cc3 100644 --- a/keyboards/afternoonlabs/gust/rev1/keyboard.json +++ b/keyboards/afternoonlabs/gust/rev1/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/ah/haven80/info.json b/keyboards/ah/haven80/info.json index bd87815154..1a8c33890a 100644 --- a/keyboards/ah/haven80/info.json +++ b/keyboards/ah/haven80/info.json @@ -1,6 +1,5 @@ { "manufacturer": "Atelier_Haven", - "url": "", "maintainer": "Freather", "processor": "atmega32u4", "bootloader": "atmel-dfu", diff --git a/keyboards/ai/keyboard.json b/keyboards/ai/keyboard.json index 8f4039b4d2..bf594d306a 100644 --- a/keyboards/ai/keyboard.json +++ b/keyboards/ai/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["D0", "D4", "C6", "D7", "D1"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0000", diff --git a/keyboards/ai03/altair/keyboard.json b/keyboards/ai03/altair/keyboard.json index a8cd8b02a7..ac5ff28eb1 100644 --- a/keyboards/ai03/altair/keyboard.json +++ b/keyboards/ai03/altair/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ai03/altair_x/keyboard.json b/keyboards/ai03/altair_x/keyboard.json index 27f36af97b..922496778f 100644 --- a/keyboards/ai03/altair_x/keyboard.json +++ b/keyboards/ai03/altair_x/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ai03/andromeda/keyboard.json b/keyboards/ai03/andromeda/keyboard.json index d085b91ad1..0ad082436a 100644 --- a/keyboards/ai03/andromeda/keyboard.json +++ b/keyboards/ai03/andromeda/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Andromeda", "manufacturer": "ai03 Design Studio", - "url": "", "maintainer": "ai03", "usb": { "vid": "0xA103", diff --git a/keyboards/ai03/duet/keyboard.json b/keyboards/ai03/duet/keyboard.json index 1d11c868a3..287097e0e1 100644 --- a/keyboards/ai03/duet/keyboard.json +++ b/keyboards/ai03/duet/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/ai03/equinox/info.json b/keyboards/ai03/equinox/info.json index 7c2cc46500..a6c424e187 100644 --- a/keyboards/ai03/equinox/info.json +++ b/keyboards/ai03/equinox/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Equinox", "manufacturer": "ai03 Design Studio", - "url": "", "maintainer": "ai03", "usb": { "vid": "0xA103", diff --git a/keyboards/ai03/equinox/rev0/keyboard.json b/keyboards/ai03/equinox/rev0/keyboard.json index e38fada333..5006c88239 100644 --- a/keyboards/ai03/equinox/rev0/keyboard.json +++ b/keyboards/ai03/equinox/rev0/keyboard.json @@ -3,7 +3,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ai03/equinox/rev1/keyboard.json b/keyboards/ai03/equinox/rev1/keyboard.json index 590a84b31c..59a311e577 100644 --- a/keyboards/ai03/equinox/rev1/keyboard.json +++ b/keyboards/ai03/equinox/rev1/keyboard.json @@ -3,7 +3,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ai03/equinox_xl/keyboard.json b/keyboards/ai03/equinox_xl/keyboard.json index e6abf4a0c2..d3b6fd0969 100644 --- a/keyboards/ai03/equinox_xl/keyboard.json +++ b/keyboards/ai03/equinox_xl/keyboard.json @@ -9,8 +9,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ai03/jp60/keyboard.json b/keyboards/ai03/jp60/keyboard.json index 389993626d..901263c6c8 100644 --- a/keyboards/ai03/jp60/keyboard.json +++ b/keyboards/ai03/jp60/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ai03/orbit_x/keyboard.json b/keyboards/ai03/orbit_x/keyboard.json index d039969b37..859ff47085 100644 --- a/keyboards/ai03/orbit_x/keyboard.json +++ b/keyboards/ai03/orbit_x/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "OrbitX", "manufacturer": "ai03 Design Studio", - "url": "", "maintainer": "ai03", "usb": { "vid": "0xA103", diff --git a/keyboards/ai03/polaris/keyboard.json b/keyboards/ai03/polaris/keyboard.json index 7e6ab9aec7..72fe915cb2 100644 --- a/keyboards/ai03/polaris/keyboard.json +++ b/keyboards/ai03/polaris/keyboard.json @@ -12,7 +12,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/ai03/quasar/keyboard.json b/keyboards/ai03/quasar/keyboard.json index 52902e3067..bd4b1b51d9 100644 --- a/keyboards/ai03/quasar/keyboard.json +++ b/keyboards/ai03/quasar/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/ai03/soyuz/keyboard.json b/keyboards/ai03/soyuz/keyboard.json index 2abfbd5ead..be41a01798 100644 --- a/keyboards/ai03/soyuz/keyboard.json +++ b/keyboards/ai03/soyuz/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ai03/voyager60_alps/keyboard.json b/keyboards/ai03/voyager60_alps/keyboard.json index 9b8fa051b5..1c1ed33f52 100644 --- a/keyboards/ai03/voyager60_alps/keyboard.json +++ b/keyboards/ai03/voyager60_alps/keyboard.json @@ -19,8 +19,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/aidansmithdotdev/fine40/keyboard.json b/keyboards/aidansmithdotdev/fine40/keyboard.json index 9663106607..503e7a162a 100644 --- a/keyboards/aidansmithdotdev/fine40/keyboard.json +++ b/keyboards/aidansmithdotdev/fine40/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "encoder": true, diff --git a/keyboards/akb/ogr/keyboard.json b/keyboards/akb/ogr/keyboard.json index d1b062820a..0e401c8f52 100644 --- a/keyboards/akb/ogr/keyboard.json +++ b/keyboards/akb/ogr/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/akb/ogrn/keyboard.json b/keyboards/akb/ogrn/keyboard.json index 780c353747..7ccf6ebb97 100644 --- a/keyboards/akb/ogrn/keyboard.json +++ b/keyboards/akb/ogrn/keyboard.json @@ -5,8 +5,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/nix_studio/lilith/config.h b/keyboards/akb/vero/board.h index 225e6ac51b..2a370fe2e0 100644 --- a/keyboards/nix_studio/lilith/config.h +++ b/keyboards/akb/vero/board.h @@ -1,7 +1,8 @@ // Copyright 2022 Martin Arnstad (@arnstadm) // SPDX-License-Identifier: GPL-2.0-or-later - #pragma once -/* Set HSE clock since it differs from F411 default */ -#define STM32_HSECLK 16000000 +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/akb/vero/config.h b/keyboards/akb/vero/config.h deleted file mode 100644 index bb6d15d92c..0000000000 --- a/keyboards/akb/vero/config.h +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright 2022 Martin Arnstad (@arnstadm) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* - * Feature disable options - * These options are also useful to firmware size reduction. - */ - -/* disable debug print */ -//#define NO_DEBUG - -/* disable print */ -//#define NO_PRINT - -/* disable action features */ -//#define NO_ACTION_LAYER -//#define NO_ACTION_TAPPING -//#define NO_ACTION_ONESHOT - -/* Set HSE clock since it differs from F411 default */ -#define STM32_HSECLK 16000000 diff --git a/keyboards/akb/vero/keyboard.json b/keyboards/akb/vero/keyboard.json index a598578c0c..dcdaf21635 100644 --- a/keyboards/akb/vero/keyboard.json +++ b/keyboards/akb/vero/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/akko/5087/5087.c b/keyboards/akko/5087/5087.c index 996f8c2585..27439c20ef 100644 --- a/keyboards/akko/5087/5087.c +++ b/keyboards/akko/5087/5087.c @@ -164,7 +164,7 @@ bool process_record_kb(uint16_t keycode, keyrecord_t* record) { if (record->event.pressed) { set_single_persistent_default_layer(MAC_B); keymap_config.no_gui = 0; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } return false; case QK_RGB_MATRIX_TOGGLE: diff --git a/keyboards/akko/5087/keyboard.json b/keyboards/akko/5087/keyboard.json index a2f72351ed..0561817b69 100644 --- a/keyboards/akko/5087/keyboard.json +++ b/keyboards/akko/5087/keyboard.json @@ -16,8 +16,6 @@ "bootmagic": true, "mousekey": false, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/akko/5108/keyboard.json b/keyboards/akko/5108/keyboard.json index e98e421089..b62dbbf17c 100644 --- a/keyboards/akko/5108/keyboard.json +++ b/keyboards/akko/5108/keyboard.json @@ -16,8 +16,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/akko/acr87/keyboard.json b/keyboards/akko/acr87/keyboard.json index 9f37a91b9a..17981b609a 100644 --- a/keyboards/akko/acr87/keyboard.json +++ b/keyboards/akko/acr87/keyboard.json @@ -16,8 +16,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/akko/top40/keyboard.json b/keyboards/akko/top40/keyboard.json index fd7cf497e7..3cb7086608 100644 --- a/keyboards/akko/top40/keyboard.json +++ b/keyboards/akko/top40/keyboard.json @@ -16,8 +16,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/al1/keyboard.json b/keyboards/al1/keyboard.json index 7e6440560f..aed02e8ade 100644 --- a/keyboards/al1/keyboard.json +++ b/keyboards/al1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "AL1", "manufacturer": "Alsoran", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x544C", diff --git a/keyboards/alf/x11/keyboard.json b/keyboards/alf/x11/keyboard.json index c571705dc1..5d141804ba 100644 --- a/keyboards/alf/x11/keyboard.json +++ b/keyboards/alf/x11/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "X1.1", "manufacturer": "ALF", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4146", @@ -14,8 +13,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/alf/x2/keyboard.json b/keyboards/alf/x2/keyboard.json index 9dd011c7f1..103c7ad88b 100644 --- a/keyboards/alf/x2/keyboard.json +++ b/keyboards/alf/x2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "X2", "manufacturer": "ALF", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/alfredslab/swift65/hotswap/keyboard.json b/keyboards/alfredslab/swift65/hotswap/keyboard.json index d2a6e6da03..edf4a13ce1 100644 --- a/keyboards/alfredslab/swift65/hotswap/keyboard.json +++ b/keyboards/alfredslab/swift65/hotswap/keyboard.json @@ -31,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/alfredslab/swift65/solder/keyboard.json b/keyboards/alfredslab/swift65/solder/keyboard.json index cb419d4cc1..50cdb3fd56 100644 --- a/keyboards/alfredslab/swift65/solder/keyboard.json +++ b/keyboards/alfredslab/swift65/solder/keyboard.json @@ -32,8 +32,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/alhenkb/macropad5x4/keyboard.json b/keyboards/alhenkb/macropad5x4/keyboard.json index 1fb472255d..79cf98fb63 100644 --- a/keyboards/alhenkb/macropad5x4/keyboard.json +++ b/keyboards/alhenkb/macropad5x4/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -16,7 +14,6 @@ "rows": ["F5", "F7", "B3", "B6", "B5"], "cols": ["F4", "F6", "B1", "B2"] }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/alpha/keyboard.json b/keyboards/alpha/keyboard.json index 1cb2fe71cd..84a25eb180 100644 --- a/keyboards/alpha/keyboard.json +++ b/keyboards/alpha/keyboard.json @@ -29,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/alpine65/keyboard.json b/keyboards/alpine65/keyboard.json index 36bba880a8..ae372d2a08 100644 --- a/keyboards/alpine65/keyboard.json +++ b/keyboards/alpine65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Alpine65", "manufacturer": "Bitmap Designs", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x6680", diff --git a/keyboards/alps64/keyboard.json b/keyboards/alps64/keyboard.json index a6a60478f8..d8f5fb22b5 100644 --- a/keyboards/alps64/keyboard.json +++ b/keyboards/alps64/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Alps64", "manufacturer": "Hasu", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x6873", diff --git a/keyboards/amag23/keyboard.json b/keyboards/amag23/keyboard.json index e3eb16cdad..01b4b18e0c 100644 --- a/keyboards/amag23/keyboard.json +++ b/keyboards/amag23/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/amjkeyboard/amj40/keyboard.json b/keyboards/amjkeyboard/amj40/keyboard.json index de536cb55e..1c1824c25c 100644 --- a/keyboards/amjkeyboard/amj40/keyboard.json +++ b/keyboards/amjkeyboard/amj40/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "AMJ40", "manufacturer": "Han Chen", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x00D8", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/amjkeyboard/amj60/keyboard.json b/keyboards/amjkeyboard/amj60/keyboard.json index a2cfd1b6e1..f7d074041e 100644 --- a/keyboards/amjkeyboard/amj60/keyboard.json +++ b/keyboards/amjkeyboard/amj60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "AMJ60", "manufacturer": "Han Chen", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x00D8", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/amjkeyboard/amj66/keyboard.json b/keyboards/amjkeyboard/amj66/keyboard.json index 72646e4fc7..f674452f32 100644 --- a/keyboards/amjkeyboard/amj66/keyboard.json +++ b/keyboards/amjkeyboard/amj66/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "AMJ66", "manufacturer": "AMJKeyboard", - "url": "", "maintainer": "FSund, qmk", "usb": { "vid": "0x00D8", diff --git a/keyboards/amjkeyboard/amj84/keyboard.json b/keyboards/amjkeyboard/amj84/keyboard.json index b544ffc8b3..a6108ab9a7 100644 --- a/keyboards/amjkeyboard/amj84/keyboard.json +++ b/keyboards/amjkeyboard/amj84/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "AMJ84", "manufacturer": "Han Chen", - "url": "", "maintainer": "peepeetee", "usb": { "vid": "0x00D8", @@ -12,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/amjkeyboard/amj96/keyboard.json b/keyboards/amjkeyboard/amj96/keyboard.json index 23a131c615..ea02e6170c 100644 --- a/keyboards/amjkeyboard/amj96/keyboard.json +++ b/keyboards/amjkeyboard/amj96/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "AMJ96", "manufacturer": "Han Chen", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x00D8", diff --git a/keyboards/amjkeyboard/amjpad/keyboard.json b/keyboards/amjkeyboard/amjpad/keyboard.json index e331f3af19..3fa60ed3d7 100644 --- a/keyboards/amjkeyboard/amjpad/keyboard.json +++ b/keyboards/amjkeyboard/amjpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "PAD", "manufacturer": "AMJ", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x00D8", diff --git a/keyboards/amptrics/0422/0422.c b/keyboards/amptrics/0422/0422.c index 034151b5b8..4c0ed2e5b8 100644 --- a/keyboards/amptrics/0422/0422.c +++ b/keyboards/amptrics/0422/0422.c @@ -23,30 +23,31 @@ #define LED_PINS_COUNT 4 -pin_t pins[LED_PINS_COUNT] = {LED_LAYER_0, LED_LAYER_1, LED_LAYER_2, LED_LAYER_3}; - +static pin_t pins[LED_PINS_COUNT] = {LED_LAYER_0, LED_LAYER_1, LED_LAYER_2, LED_LAYER_3}; // Function to turn on all LEDs void turn_on_all_leds(void) { - for (int i = 0; i < LED_PINS_COUNT; i++) { + for (uint8_t i = 0; i < LED_PINS_COUNT; i++) { gpio_write_pin_high(pins[i]); // Turn on LED } } // Function to turn off all LEDs void turn_off_all_leds(void) { - for (int i = 0; i < LED_PINS_COUNT; i++) { + for (uint8_t i = 0; i < LED_PINS_COUNT; i++) { gpio_write_pin_low(pins[i]); // Turn off LED } } void update_leds_for_layer(uint8_t layer) { turn_off_all_leds(); - gpio_write_pin_high(pins[layer]); + if (layer < LED_PINS_COUNT) { + gpio_write_pin_high(pins[layer]); + } } void keyboard_post_init_kb(void) { - for (int i = 0; i < LED_PINS_COUNT; i++) { + for (uint8_t i = 0; i < LED_PINS_COUNT; i++) { gpio_set_pin_output(pins[i]); gpio_write_pin_low(pins[i]); } diff --git a/keyboards/an_achronism/tetromino/keyboard.json b/keyboards/an_achronism/tetromino/keyboard.json index 98cb9faf3e..b9c0acb374 100644 --- a/keyboards/an_achronism/tetromino/keyboard.json +++ b/keyboards/an_achronism/tetromino/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/anavi/arrows/keyboard.json b/keyboards/anavi/arrows/keyboard.json index 48dae7b2ea..0d09b6d551 100644 --- a/keyboards/anavi/arrows/keyboard.json +++ b/keyboards/anavi/arrows/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/anavi/knob1/keyboard.json b/keyboards/anavi/knob1/keyboard.json index 9c4c60640e..83d0064b8d 100644 --- a/keyboards/anavi/knob1/keyboard.json +++ b/keyboards/anavi/knob1/keyboard.json @@ -7,8 +7,6 @@ "bootloader": "rp2040", "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/anavi/knobs3/keyboard.json b/keyboards/anavi/knobs3/keyboard.json index 11081ee086..13f5ab6e14 100644 --- a/keyboards/anavi/knobs3/keyboard.json +++ b/keyboards/anavi/knobs3/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, @@ -23,9 +21,6 @@ "rgblight": { "led_count": 1, "hue_steps": 10, - "saturation_steps": 17, - "brightness_steps": 17, - "max_brightness": 255, "animations": { "alternating": true, "breathing": true, diff --git a/keyboards/anavi/macropad10/keyboard.json b/keyboards/anavi/macropad10/keyboard.json index a355fdd549..6b104b7afc 100644 --- a/keyboards/anavi/macropad10/keyboard.json +++ b/keyboards/anavi/macropad10/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, @@ -22,9 +20,6 @@ "rgblight": { "led_count": 4, "hue_steps": 10, - "saturation_steps": 17, - "brightness_steps": 17, - "max_brightness": 255, "animations": { "alternating": true, "breathing": true, diff --git a/keyboards/anavi/macropad12/keyboard.json b/keyboards/anavi/macropad12/keyboard.json index 3a1a07a0a1..7ac3e27fcd 100644 --- a/keyboards/anavi/macropad12/keyboard.json +++ b/keyboards/anavi/macropad12/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/anavi/macropad8/keyboard.json b/keyboards/anavi/macropad8/keyboard.json index 50381ce8a8..8073a038a2 100644 --- a/keyboards/anavi/macropad8/keyboard.json +++ b/keyboards/anavi/macropad8/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Macro Pad 8", "manufacturer": "ANAVI", - "url": "", "maintainer": "leon-anavi", "usb": { "vid": "0xCEEB", @@ -37,8 +36,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/andean_condor/keyboard.json b/keyboards/andean_condor/keyboard.json index cfc3eefa87..02cb70986b 100644 --- a/keyboards/andean_condor/keyboard.json +++ b/keyboards/andean_condor/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ano/keyboard.json b/keyboards/ano/keyboard.json index 9c46895f1a..2954fd981e 100644 --- a/keyboards/ano/keyboard.json +++ b/keyboards/ano/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/anomalykb/a65i/keyboard.json b/keyboards/anomalykb/a65i/keyboard.json index 8fadaadadb..88de392a3b 100644 --- a/keyboards/anomalykb/a65i/keyboard.json +++ b/keyboards/anomalykb/a65i/keyboard.json @@ -9,7 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/aos/tkl/keyboard.json b/keyboards/aos/tkl/keyboard.json index 8cd47a44a5..7739ba860b 100644 --- a/keyboards/aos/tkl/keyboard.json +++ b/keyboards/aos/tkl/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/aplyard/aplx6/info.json b/keyboards/aplyard/aplx6/info.json index 9f86182a33..a0624a7d49 100644 --- a/keyboards/aplyard/aplx6/info.json +++ b/keyboards/aplyard/aplx6/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Aplx6", "manufacturer": "Aplyard", - "url": "", "maintainer": "Aplyard", "usb": { "vid": "0xE0E0" diff --git a/keyboards/aplyard/aplx6/rev1/keyboard.json b/keyboards/aplyard/aplx6/rev1/keyboard.json index e7f59d12c6..667ebdba02 100644 --- a/keyboards/aplyard/aplx6/rev1/keyboard.json +++ b/keyboards/aplyard/aplx6/rev1/keyboard.json @@ -5,8 +5,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/aplyard/aplx6/rev2/keyboard.json b/keyboards/aplyard/aplx6/rev2/keyboard.json index 7cd8d00544..4c881534f4 100644 --- a/keyboards/aplyard/aplx6/rev2/keyboard.json +++ b/keyboards/aplyard/aplx6/rev2/keyboard.json @@ -5,8 +5,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/arabica37/rev1/keyboard.json b/keyboards/arabica37/rev1/keyboard.json index 63c4fe2940..d1db9a276c 100644 --- a/keyboards/arabica37/rev1/keyboard.json +++ b/keyboards/arabica37/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Arabica3/7", "manufacturer": "CalciumNitride", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/archetype/minervalx/keyboard.json b/keyboards/archetype/minervalx/keyboard.json index 0d01ccf485..3523e95afb 100644 --- a/keyboards/archetype/minervalx/keyboard.json +++ b/keyboards/archetype/minervalx/keyboard.json @@ -18,7 +18,6 @@ "rows": ["GP11", "GP12", "GP13", "GP14", "GP15"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0100", diff --git a/keyboards/ares/keyboard.json b/keyboards/ares/keyboard.json index f1e650397e..21bf1a55f2 100644 --- a/keyboards/ares/keyboard.json +++ b/keyboards/ares/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ares", "manufacturer": "LSJ", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x20A0", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/argo_works/ishi/80/mk0_avr/keyboard.json b/keyboards/argo_works/ishi/80/mk0_avr/keyboard.json index 47414ee0c4..9717ada94f 100644 --- a/keyboards/argo_works/ishi/80/mk0_avr/keyboard.json +++ b/keyboards/argo_works/ishi/80/mk0_avr/keyboard.json @@ -15,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/argo_works/ishi/80/mk0_avr_extra/keyboard.json b/keyboards/argo_works/ishi/80/mk0_avr_extra/keyboard.json index 89b9b1994f..54a5b72d5a 100644 --- a/keyboards/argo_works/ishi/80/mk0_avr_extra/keyboard.json +++ b/keyboards/argo_works/ishi/80/mk0_avr_extra/keyboard.json @@ -16,8 +16,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/arisu/keyboard.json b/keyboards/arisu/keyboard.json index 43bb668b99..2dd58321e3 100644 --- a/keyboards/arisu/keyboard.json +++ b/keyboards/arisu/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/arrayperipherals/1x4p1/keyboard.json b/keyboards/arrayperipherals/1x4p1/keyboard.json index f9344e3538..4a0f1b9cfd 100644 --- a/keyboards/arrayperipherals/1x4p1/keyboard.json +++ b/keyboards/arrayperipherals/1x4p1/keyboard.json @@ -17,8 +17,6 @@ "bootloader": "caterina", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/artemis/paragon/info.json b/keyboards/artemis/paragon/info.json index 63fefe8c55..1ff5d4ab42 100644 --- a/keyboards/artemis/paragon/info.json +++ b/keyboards/artemis/paragon/info.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -17,7 +15,6 @@ "lto": true }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x3449", diff --git a/keyboards/ash1800/keyboard.json b/keyboards/ash1800/keyboard.json index 7156172173..c253590937 100644 --- a/keyboards/ash1800/keyboard.json +++ b/keyboards/ash1800/keyboard.json @@ -15,7 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/ash_xiix/keyboard.json b/keyboards/ash_xiix/keyboard.json index e743b80a8f..c1ba811d32 100644 --- a/keyboards/ash_xiix/keyboard.json +++ b/keyboards/ash_xiix/keyboard.json @@ -16,8 +16,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ashwing66/keyboard.json b/keyboards/ashwing66/keyboard.json index 27a5799964..427eebcd96 100644 --- a/keyboards/ashwing66/keyboard.json +++ b/keyboards/ashwing66/keyboard.json @@ -75,7 +75,6 @@ {"matrix": [0, 14], "x": 206, "y": 1, "flags": 4}, {"matrix": [0, 15], "x": 223, "y": 0, "flags": 4} ], - "led_flush_limit": 16, "led_process_limit": 5, "max_brightness": 125, "sleep": true diff --git a/keyboards/ask55/keyboard.json b/keyboards/ask55/keyboard.json index 66efb1749a..1731d1a3d9 100644 --- a/keyboards/ask55/keyboard.json +++ b/keyboards/ask55/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -36,9 +34,7 @@ "static_gradient": true }, "brightness_steps": 8, - "hue_steps": 8, "led_count": 8, - "max_brightness": 255, "saturation_steps": 8, "sleep": true }, diff --git a/keyboards/at_at/660m/keyboard.json b/keyboards/at_at/660m/keyboard.json index a9c5af73f8..f42c0b7cbb 100644 --- a/keyboards/at_at/660m/keyboard.json +++ b/keyboards/at_at/660m/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "660M", "manufacturer": "AT-AT", - "url": "", "maintainer": "adrientetar", "usb": { "vid": "0xA22A", diff --git a/keyboards/atlantis/ak81_ve/keyboard.json b/keyboards/atlantis/ak81_ve/keyboard.json index aa85a55e0a..7c01714201 100644 --- a/keyboards/atlantis/ak81_ve/keyboard.json +++ b/keyboards/atlantis/ak81_ve/keyboard.json @@ -181,8 +181,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dynamic_macro": true, "encoder": true, "extrakey": true, diff --git a/keyboards/atlantis/ps17/keyboard.json b/keyboards/atlantis/ps17/keyboard.json index ee7255c8fa..3c7f50be0b 100644 --- a/keyboards/atlantis/ps17/keyboard.json +++ b/keyboards/atlantis/ps17/keyboard.json @@ -16,8 +16,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/atlas_65/keyboard.json b/keyboards/atlas_65/keyboard.json index 4e8db96d3a..3d72ec602e 100644 --- a/keyboards/atlas_65/keyboard.json +++ b/keyboards/atlas_65/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/atomic/keyboard.json b/keyboards/atomic/keyboard.json index 5a269316cf..3e0ac225c9 100644 --- a/keyboards/atomic/keyboard.json +++ b/keyboards/atomic/keyboard.json @@ -11,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/atreus/feather/keyboard.json b/keyboards/atreus/feather/keyboard.json index 7f5866e502..1392849fd4 100644 --- a/keyboards/atreus/feather/keyboard.json +++ b/keyboards/atreus/feather/keyboard.json @@ -7,8 +7,7 @@ "processor": "atmega32u4", "bootloader": "caterina", "features": { - "bluetooth": true, - "console": false + "bluetooth": true }, "build": { "lto": true diff --git a/keyboards/atreus/info.json b/keyboards/atreus/info.json index 1a33591ab5..cf53b506a0 100644 --- a/keyboards/atreus/info.json +++ b/keyboards/atreus/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Atreus", "manufacturer": "Technomancy", - "url": "", "maintainer": "qmk", "features": { "bootmagic": false, diff --git a/keyboards/atreus62/keyboard.json b/keyboards/atreus62/keyboard.json index c24c02e71e..5fb786fa98 100644 --- a/keyboards/atreus62/keyboard.json +++ b/keyboards/atreus62/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Atreus62", "manufacturer": "Profet", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5072", diff --git a/keyboards/atxkb/1894/keyboard.json b/keyboards/atxkb/1894/keyboard.json index 878c3d998c..3fdd217171 100644 --- a/keyboards/atxkb/1894/keyboard.json +++ b/keyboards/atxkb/1894/keyboard.json @@ -15,7 +15,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/aves60/keyboard.json b/keyboards/aves60/keyboard.json index 6d58d43b6a..09298df289 100644 --- a/keyboards/aves60/keyboard.json +++ b/keyboards/aves60/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/aves65/keyboard.json b/keyboards/aves65/keyboard.json index 3ad686f83a..6d61bd211a 100644 --- a/keyboards/aves65/keyboard.json +++ b/keyboards/aves65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Aves65", "manufacturer": "I/O Keyboards", - "url": "", "maintainer": "Hund", "usb": { "vid": "0x9991", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/axolstudio/foundation_gamma/keyboard.json b/keyboards/axolstudio/foundation_gamma/keyboard.json index 86ba316268..3d79739719 100644 --- a/keyboards/axolstudio/foundation_gamma/keyboard.json +++ b/keyboards/axolstudio/foundation_gamma/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/axolstudio/helpo/keyboard.json b/keyboards/axolstudio/helpo/keyboard.json index c90c967788..4af362c596 100644 --- a/keyboards/axolstudio/helpo/keyboard.json +++ b/keyboards/axolstudio/helpo/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Helpo", "manufacturer": "Axolstudio", - "url": "", "maintainer": "kb-elmo", "usb": { "vid": "0x525C", diff --git a/keyboards/axolstudio/yeti/hotswap/keyboard.json b/keyboards/axolstudio/yeti/hotswap/keyboard.json index 728c359880..5607001287 100644 --- a/keyboards/axolstudio/yeti/hotswap/keyboard.json +++ b/keyboards/axolstudio/yeti/hotswap/keyboard.json @@ -51,8 +51,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/axolstudio/yeti/soldered/keyboard.json b/keyboards/axolstudio/yeti/soldered/keyboard.json index 9edb808330..6dac1e5b16 100644 --- a/keyboards/axolstudio/yeti/soldered/keyboard.json +++ b/keyboards/axolstudio/yeti/soldered/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/bacca70/keyboard.json b/keyboards/bacca70/keyboard.json index 8d4483bc6f..6fe4718c49 100644 --- a/keyboards/bacca70/keyboard.json +++ b/keyboards/bacca70/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/baguette/keyboard.json b/keyboards/baguette/keyboard.json index 001757f861..857c28b0bd 100644 --- a/keyboards/baguette/keyboard.json +++ b/keyboards/baguette/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Baguette", "manufacturer": "Yiancar", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/bahm/aster_ergo/keyboard.json b/keyboards/bahm/aster_ergo/keyboard.json index 5545e02409..963764d497 100644 --- a/keyboards/bahm/aster_ergo/keyboard.json +++ b/keyboards/bahm/aster_ergo/keyboard.json @@ -17,7 +17,6 @@ "cols": ["A10", "A9", "A8", "B15", "B14", "B13", "B12", "B1", "B0", "A7", "A6", "B4", "B3", "A15", "A5", "A2", "A1"], "rows": ["B7", "B6", "B5", "B11", "B10", "A4"] }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x8701", diff --git a/keyboards/balloondogcaps/tr90/keyboard.json b/keyboards/balloondogcaps/tr90/keyboard.json index 42071ba3f0..6defe95987 100644 --- a/keyboards/balloondogcaps/tr90/keyboard.json +++ b/keyboards/balloondogcaps/tr90/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["F0", "F1", "F4"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/balloondogcaps/tr90pm/keyboard.json b/keyboards/balloondogcaps/tr90pm/keyboard.json index c5badb7836..da8f29e977 100644 --- a/keyboards/balloondogcaps/tr90pm/keyboard.json +++ b/keyboards/balloondogcaps/tr90pm/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["C6", "D7", "E6"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0002", diff --git a/keyboards/bantam44/keyboard.json b/keyboards/bantam44/keyboard.json index ac534af6a9..d5deffa01b 100644 --- a/keyboards/bantam44/keyboard.json +++ b/keyboards/bantam44/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Bantam44", "manufacturer": "Bantam Keyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/barracuda/keyboard.json b/keyboards/barracuda/keyboard.json index 6e606e11ea..fd05e9ca7c 100644 --- a/keyboards/barracuda/keyboard.json +++ b/keyboards/barracuda/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/bastardkb/charybdis/3x5/v1/elitec/keyboard.json b/keyboards/bastardkb/charybdis/3x5/v1/elitec/keyboard.json index 4a94d023d4..2fd99fb5ab 100644 --- a/keyboards/bastardkb/charybdis/3x5/v1/elitec/keyboard.json +++ b/keyboards/bastardkb/charybdis/3x5/v1/elitec/keyboard.json @@ -26,7 +26,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "D2", + "serial": { + "pin": "D2" + }, "matrix_pins": { "right": { "cols": ["C7", "B7", "D7", "E6", "B4"], diff --git a/keyboards/bastardkb/charybdis/3x5/v2/elitec/keyboard.json b/keyboards/bastardkb/charybdis/3x5/v2/elitec/keyboard.json index bc95061ced..51f6cedf51 100644 --- a/keyboards/bastardkb/charybdis/3x5/v2/elitec/keyboard.json +++ b/keyboards/bastardkb/charybdis/3x5/v2/elitec/keyboard.json @@ -26,7 +26,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "D2" + "serial": { + "pin": "D2" + } }, "processor": "atmega32u4", "bootloader": "atmel-dfu" diff --git a/keyboards/bastardkb/charybdis/3x5/v2/splinky_2/keyboard.json b/keyboards/bastardkb/charybdis/3x5/v2/splinky_2/keyboard.json index cc990d3f21..cf800062b3 100644 --- a/keyboards/bastardkb/charybdis/3x5/v2/splinky_2/keyboard.json +++ b/keyboards/bastardkb/charybdis/3x5/v2/splinky_2/keyboard.json @@ -20,7 +20,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "GP1" + "serial": { + "pin": "GP1" + } }, "ws2812": { "pin": "GP0", diff --git a/keyboards/bastardkb/charybdis/3x5/v2/splinky_3/keyboard.json b/keyboards/bastardkb/charybdis/3x5/v2/splinky_3/keyboard.json index 6719b21196..d9039f7591 100644 --- a/keyboards/bastardkb/charybdis/3x5/v2/splinky_3/keyboard.json +++ b/keyboards/bastardkb/charybdis/3x5/v2/splinky_3/keyboard.json @@ -20,7 +20,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "GP1" + "serial": { + "pin": "GP1" + } }, "ws2812": { "pin": "GP0", diff --git a/keyboards/bastardkb/charybdis/3x5/v2/stemcell/keyboard.json b/keyboards/bastardkb/charybdis/3x5/v2/stemcell/keyboard.json index 2de77b07f0..ca48cc0f3c 100644 --- a/keyboards/bastardkb/charybdis/3x5/v2/stemcell/keyboard.json +++ b/keyboards/bastardkb/charybdis/3x5/v2/stemcell/keyboard.json @@ -30,7 +30,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "A3" + "serial": { + "pin": "A3" + } }, "development_board": "stemcell" } diff --git a/keyboards/bastardkb/charybdis/3x6/v1/elitec/keyboard.json b/keyboards/bastardkb/charybdis/3x6/v1/elitec/keyboard.json index dcc454366c..cef4eab72f 100644 --- a/keyboards/bastardkb/charybdis/3x6/v1/elitec/keyboard.json +++ b/keyboards/bastardkb/charybdis/3x6/v1/elitec/keyboard.json @@ -26,7 +26,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "D2", + "serial": { + "pin": "D2" + }, "matrix_pins": { "right": { "cols": ["F1", "C7", "B7", "D7", "E6", "B4"], diff --git a/keyboards/bastardkb/charybdis/3x6/v2/elitec/keyboard.json b/keyboards/bastardkb/charybdis/3x6/v2/elitec/keyboard.json index ce74b2dc6d..fdfd2c38f9 100644 --- a/keyboards/bastardkb/charybdis/3x6/v2/elitec/keyboard.json +++ b/keyboards/bastardkb/charybdis/3x6/v2/elitec/keyboard.json @@ -26,7 +26,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "D2" + "serial": { + "pin": "D2" + } }, "processor": "atmega32u4", "bootloader": "atmel-dfu" diff --git a/keyboards/bastardkb/charybdis/3x6/v2/splinky_2/keyboard.json b/keyboards/bastardkb/charybdis/3x6/v2/splinky_2/keyboard.json index 825508475c..650bf46481 100644 --- a/keyboards/bastardkb/charybdis/3x6/v2/splinky_2/keyboard.json +++ b/keyboards/bastardkb/charybdis/3x6/v2/splinky_2/keyboard.json @@ -20,7 +20,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "GP1" + "serial": { + "pin": "GP1" + } }, "ws2812": { "pin": "GP0", diff --git a/keyboards/bastardkb/charybdis/3x6/v2/splinky_3/keyboard.json b/keyboards/bastardkb/charybdis/3x6/v2/splinky_3/keyboard.json index 4d9cfb616d..b2a4890f56 100644 --- a/keyboards/bastardkb/charybdis/3x6/v2/splinky_3/keyboard.json +++ b/keyboards/bastardkb/charybdis/3x6/v2/splinky_3/keyboard.json @@ -20,7 +20,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "GP1" + "serial": { + "pin": "GP1" + } }, "ws2812": { "pin": "GP0", diff --git a/keyboards/bastardkb/charybdis/3x6/v2/stemcell/keyboard.json b/keyboards/bastardkb/charybdis/3x6/v2/stemcell/keyboard.json index 05d82b2445..a405395438 100644 --- a/keyboards/bastardkb/charybdis/3x6/v2/stemcell/keyboard.json +++ b/keyboards/bastardkb/charybdis/3x6/v2/stemcell/keyboard.json @@ -30,7 +30,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "A3" + "serial": { + "pin": "A3" + } }, "development_board": "stemcell" } diff --git a/keyboards/bastardkb/charybdis/4x6/v1/elitec/keyboard.json b/keyboards/bastardkb/charybdis/4x6/v1/elitec/keyboard.json index b90b144c8b..6b0caff82e 100644 --- a/keyboards/bastardkb/charybdis/4x6/v1/elitec/keyboard.json +++ b/keyboards/bastardkb/charybdis/4x6/v1/elitec/keyboard.json @@ -26,7 +26,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "D2", + "serial": { + "pin": "D2" + }, "matrix_pins": { "right": { "cols": ["F1", "C7", "B7", "D7", "E6", "B4"], diff --git a/keyboards/bastardkb/charybdis/4x6/v2/elitec/keyboard.json b/keyboards/bastardkb/charybdis/4x6/v2/elitec/keyboard.json index 8ae66d083b..4163f9d476 100644 --- a/keyboards/bastardkb/charybdis/4x6/v2/elitec/keyboard.json +++ b/keyboards/bastardkb/charybdis/4x6/v2/elitec/keyboard.json @@ -26,7 +26,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "D2" + "serial": { + "pin": "D2" + } }, "processor": "atmega32u4", "bootloader": "atmel-dfu" diff --git a/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/keyboard.json b/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/keyboard.json index b0c98389f7..0da7d0b442 100644 --- a/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/keyboard.json +++ b/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/keyboard.json @@ -20,7 +20,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "GP1" + "serial": { + "pin": "GP1" + } }, "ws2812": { "pin": "GP0", diff --git a/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/keyboard.json b/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/keyboard.json index 1e072db85b..026684eb92 100644 --- a/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/keyboard.json +++ b/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/keyboard.json @@ -20,7 +20,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "GP1" + "serial": { + "pin": "GP1" + } }, "ws2812": { "pin": "GP0", diff --git a/keyboards/bastardkb/charybdis/4x6/v2/stemcell/keyboard.json b/keyboards/bastardkb/charybdis/4x6/v2/stemcell/keyboard.json index ab145e0f95..ed929f7fb7 100644 --- a/keyboards/bastardkb/charybdis/4x6/v2/stemcell/keyboard.json +++ b/keyboards/bastardkb/charybdis/4x6/v2/stemcell/keyboard.json @@ -30,7 +30,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "A3" + "serial": { + "pin": "A3" + } }, "development_board": "stemcell" } diff --git a/keyboards/bastardkb/dilemma/3x5_2/assembled/keyboard.json b/keyboards/bastardkb/dilemma/3x5_2/assembled/keyboard.json index ac52a86eb5..366deac293 100644 --- a/keyboards/bastardkb/dilemma/3x5_2/assembled/keyboard.json +++ b/keyboards/bastardkb/dilemma/3x5_2/assembled/keyboard.json @@ -13,7 +13,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "GP1" + "serial": { + "pin": "GP1" + } }, "processor": "RP2040", "bootloader": "rp2040" diff --git a/keyboards/bastardkb/dilemma/3x5_2/splinky/keyboard.json b/keyboards/bastardkb/dilemma/3x5_2/splinky/keyboard.json index 3c4c559cb6..e954f4f657 100644 --- a/keyboards/bastardkb/dilemma/3x5_2/splinky/keyboard.json +++ b/keyboards/bastardkb/dilemma/3x5_2/splinky/keyboard.json @@ -13,7 +13,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "GP1" + "serial": { + "pin": "GP1" + } }, "processor": "RP2040", "bootloader": "rp2040" diff --git a/keyboards/bastardkb/dilemma/3x5_3/keyboard.json b/keyboards/bastardkb/dilemma/3x5_3/keyboard.json index 12e336f023..b09f32cf5f 100644 --- a/keyboards/bastardkb/dilemma/3x5_3/keyboard.json +++ b/keyboards/bastardkb/dilemma/3x5_3/keyboard.json @@ -14,7 +14,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "GP1", + "serial": { + "pin": "GP1" + }, "bootmagic": { "matrix": [4, 0] }, @@ -32,8 +34,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/bastardkb/dilemma/4x6_4/keyboard.json b/keyboards/bastardkb/dilemma/4x6_4/keyboard.json index 7e40208a5d..4613509dba 100644 --- a/keyboards/bastardkb/dilemma/4x6_4/keyboard.json +++ b/keyboards/bastardkb/dilemma/4x6_4/keyboard.json @@ -14,7 +14,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "GP1", + "serial": { + "pin": "GP1" + }, "bootmagic": { "matrix": [5, 0] }, @@ -32,8 +34,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/bastardkb/scylla/v1/elitec/keyboard.json b/keyboards/bastardkb/scylla/v1/elitec/keyboard.json index 17b6b7fc36..25963f006c 100644 --- a/keyboards/bastardkb/scylla/v1/elitec/keyboard.json +++ b/keyboards/bastardkb/scylla/v1/elitec/keyboard.json @@ -22,7 +22,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "processor": "atmega32u4", "bootloader": "atmel-dfu" diff --git a/keyboards/bastardkb/scylla/v2/elitec/keyboard.json b/keyboards/bastardkb/scylla/v2/elitec/keyboard.json index 7bfb7ff5a4..316606b17b 100644 --- a/keyboards/bastardkb/scylla/v2/elitec/keyboard.json +++ b/keyboards/bastardkb/scylla/v2/elitec/keyboard.json @@ -22,7 +22,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "D2" + "serial": { + "pin": "D2" + } }, "processor": "atmega32u4", "bootloader": "atmel-dfu" diff --git a/keyboards/bastardkb/scylla/v2/splinky_2/keyboard.json b/keyboards/bastardkb/scylla/v2/splinky_2/keyboard.json index 2b9022d24e..2c0beb5c1d 100644 --- a/keyboards/bastardkb/scylla/v2/splinky_2/keyboard.json +++ b/keyboards/bastardkb/scylla/v2/splinky_2/keyboard.json @@ -19,7 +19,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "GP1" + "serial": { + "pin": "GP1" + } }, "ws2812": { "pin": "GP0", diff --git a/keyboards/bastardkb/scylla/v2/splinky_3/keyboard.json b/keyboards/bastardkb/scylla/v2/splinky_3/keyboard.json index cd4da3ac41..ed92be5a45 100644 --- a/keyboards/bastardkb/scylla/v2/splinky_3/keyboard.json +++ b/keyboards/bastardkb/scylla/v2/splinky_3/keyboard.json @@ -19,7 +19,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "GP1" + "serial": { + "pin": "GP1" + } }, "ws2812": { "pin": "GP0", diff --git a/keyboards/bastardkb/scylla/v2/stemcell/keyboard.json b/keyboards/bastardkb/scylla/v2/stemcell/keyboard.json index 06bfeda7d2..80325bfea3 100644 --- a/keyboards/bastardkb/scylla/v2/stemcell/keyboard.json +++ b/keyboards/bastardkb/scylla/v2/stemcell/keyboard.json @@ -26,7 +26,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "A3" + "serial": { + "pin": "A3" + } }, "development_board": "stemcell" } diff --git a/keyboards/bastardkb/skeletyl/v1/elitec/keyboard.json b/keyboards/bastardkb/skeletyl/v1/elitec/keyboard.json index 2910d80b2f..3bbba6d310 100644 --- a/keyboards/bastardkb/skeletyl/v1/elitec/keyboard.json +++ b/keyboards/bastardkb/skeletyl/v1/elitec/keyboard.json @@ -22,7 +22,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "processor": "atmega32u4", "bootloader": "atmel-dfu" diff --git a/keyboards/bastardkb/skeletyl/v2/elitec/keyboard.json b/keyboards/bastardkb/skeletyl/v2/elitec/keyboard.json index dec2537b65..43675db36d 100644 --- a/keyboards/bastardkb/skeletyl/v2/elitec/keyboard.json +++ b/keyboards/bastardkb/skeletyl/v2/elitec/keyboard.json @@ -22,7 +22,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "D2" + "serial": { + "pin": "D2" + } }, "processor": "atmega32u4", "bootloader": "atmel-dfu" diff --git a/keyboards/bastardkb/skeletyl/v2/splinky_2/keyboard.json b/keyboards/bastardkb/skeletyl/v2/splinky_2/keyboard.json index 897f195a31..32030dbd00 100644 --- a/keyboards/bastardkb/skeletyl/v2/splinky_2/keyboard.json +++ b/keyboards/bastardkb/skeletyl/v2/splinky_2/keyboard.json @@ -19,7 +19,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "GP1" + "serial": { + "pin": "GP1" + } }, "ws2812": { "pin": "GP0", diff --git a/keyboards/bastardkb/skeletyl/v2/splinky_3/keyboard.json b/keyboards/bastardkb/skeletyl/v2/splinky_3/keyboard.json index 06a93dfbeb..51227f5065 100644 --- a/keyboards/bastardkb/skeletyl/v2/splinky_3/keyboard.json +++ b/keyboards/bastardkb/skeletyl/v2/splinky_3/keyboard.json @@ -19,7 +19,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "GP1" + "serial": { + "pin": "GP1" + } }, "ws2812": { "pin": "GP0", diff --git a/keyboards/bastardkb/skeletyl/v2/stemcell/keyboard.json b/keyboards/bastardkb/skeletyl/v2/stemcell/keyboard.json index 6dd86bcc12..2e9745b7f2 100644 --- a/keyboards/bastardkb/skeletyl/v2/stemcell/keyboard.json +++ b/keyboards/bastardkb/skeletyl/v2/stemcell/keyboard.json @@ -26,7 +26,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "A3" + "serial": { + "pin": "A3" + } }, "development_board": "stemcell" } diff --git a/keyboards/bastardkb/tbkmini/v1/elitec/keyboard.json b/keyboards/bastardkb/tbkmini/v1/elitec/keyboard.json index 59988074ba..5110ea0d74 100644 --- a/keyboards/bastardkb/tbkmini/v1/elitec/keyboard.json +++ b/keyboards/bastardkb/tbkmini/v1/elitec/keyboard.json @@ -22,7 +22,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "processor": "atmega32u4", "bootloader": "atmel-dfu" diff --git a/keyboards/bastardkb/tbkmini/v2/elitec/keyboard.json b/keyboards/bastardkb/tbkmini/v2/elitec/keyboard.json index 01679bcff9..701ec6af28 100644 --- a/keyboards/bastardkb/tbkmini/v2/elitec/keyboard.json +++ b/keyboards/bastardkb/tbkmini/v2/elitec/keyboard.json @@ -22,7 +22,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "D2" + "serial": { + "pin": "D2" + } }, "processor": "atmega32u4", "bootloader": "atmel-dfu" diff --git a/keyboards/bastardkb/tbkmini/v2/splinky_2/keyboard.json b/keyboards/bastardkb/tbkmini/v2/splinky_2/keyboard.json index 2048db6251..15db3db6e8 100644 --- a/keyboards/bastardkb/tbkmini/v2/splinky_2/keyboard.json +++ b/keyboards/bastardkb/tbkmini/v2/splinky_2/keyboard.json @@ -19,7 +19,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "GP1" + "serial": { + "pin": "GP1" + } }, "ws2812": { "pin": "GP0", diff --git a/keyboards/bastardkb/tbkmini/v2/splinky_3/keyboard.json b/keyboards/bastardkb/tbkmini/v2/splinky_3/keyboard.json index 8dd21b7591..3936b9368a 100644 --- a/keyboards/bastardkb/tbkmini/v2/splinky_3/keyboard.json +++ b/keyboards/bastardkb/tbkmini/v2/splinky_3/keyboard.json @@ -19,7 +19,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "GP1" + "serial": { + "pin": "GP1" + } }, "ws2812": { "pin": "GP0", diff --git a/keyboards/bastardkb/tbkmini/v2/stemcell/keyboard.json b/keyboards/bastardkb/tbkmini/v2/stemcell/keyboard.json index 41abba96cb..2cbee7fe17 100644 --- a/keyboards/bastardkb/tbkmini/v2/stemcell/keyboard.json +++ b/keyboards/bastardkb/tbkmini/v2/stemcell/keyboard.json @@ -26,7 +26,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "A3" + "serial": { + "pin": "A3" + } }, "development_board": "stemcell" } diff --git a/keyboards/bear_face/info.json b/keyboards/bear_face/info.json index 90191299d8..1a35a26a27 100644 --- a/keyboards/bear_face/info.json +++ b/keyboards/bear_face/info.json @@ -9,8 +9,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false }, diff --git a/keyboards/beatervan/keyboard.json b/keyboards/beatervan/keyboard.json index 27d0f3e535..f1a6380727 100644 --- a/keyboards/beatervan/keyboard.json +++ b/keyboards/beatervan/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "beatervan", "manufacturer": "OJ", - "url": "", "maintainer": "OJ", "usb": { "vid": "0x6F7A", @@ -11,7 +10,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/beekeeb/piantor/keyboard.json b/keyboards/beekeeb/piantor/keyboard.json index 77bfc3678c..94463f6c6d 100644 --- a/keyboards/beekeeb/piantor/keyboard.json +++ b/keyboards/beekeeb/piantor/keyboard.json @@ -5,8 +5,6 @@ "bootloader": "rp2040", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/beekeeb/piantor_pro/keyboard.json b/keyboards/beekeeb/piantor_pro/keyboard.json index ad4890ae68..bca723d5ba 100644 --- a/keyboards/beekeeb/piantor_pro/keyboard.json +++ b/keyboards/beekeeb/piantor_pro/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["GP7", "GP8", "GP9", "GP10"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0002", diff --git a/keyboards/bestway/keyboard.json b/keyboards/bestway/keyboard.json index 66856115f8..2f4541b268 100644 --- a/keyboards/bestway/keyboard.json +++ b/keyboards/bestway/keyboard.json @@ -35,7 +35,6 @@ "led_count": 3, "saturation_steps": 8 }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0xBB05", diff --git a/keyboards/bfake/keyboard.json b/keyboards/bfake/keyboard.json index 4774e282d7..febcc29f91 100644 --- a/keyboards/bfake/keyboard.json +++ b/keyboards/bfake/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "B.fake", "manufacturer": "NotWinkeyless", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x20A0", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/biacco42/ergo42/rev1/keyboard.json b/keyboards/biacco42/ergo42/rev1/keyboard.json index c75e9d1c51..4639bf9639 100644 --- a/keyboards/biacco42/ergo42/rev1/keyboard.json +++ b/keyboards/biacco42/ergo42/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ergo42", "manufacturer": "Biacco42", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xBC42", diff --git a/keyboards/biacco42/meishi/keyboard.json b/keyboards/biacco42/meishi/keyboard.json index b7d751d83e..99f7c5debb 100644 --- a/keyboards/biacco42/meishi/keyboard.json +++ b/keyboards/biacco42/meishi/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Meishi", "manufacturer": "Biacco42", - "url": "", "maintainer": "Biacco42", "usb": { "vid": "0xBC42", diff --git a/keyboards/biacco42/meishi2/keyboard.json b/keyboards/biacco42/meishi2/keyboard.json index 2f553681bc..137c429ff1 100644 --- a/keyboards/biacco42/meishi2/keyboard.json +++ b/keyboards/biacco42/meishi2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "meishi2", "manufacturer": "Biacco42", - "url": "", "maintainer": "biacco42", "usb": { "vid": "0xBC42", diff --git a/keyboards/binepad/bn006/keyboard.json b/keyboards/binepad/bn006/keyboard.json index e5e25b4b90..52f0086d1a 100755 --- a/keyboards/binepad/bn006/keyboard.json +++ b/keyboards/binepad/bn006/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/binepad/bn009/info.json b/keyboards/binepad/bn009/info.json index 5e06ee9ef6..eba9ab4e4b 100644 --- a/keyboards/binepad/bn009/info.json +++ b/keyboards/binepad/bn009/info.json @@ -4,8 +4,6 @@ "maintainer": "binepad", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/binepad/bnr1/info.json b/keyboards/binepad/bnr1/info.json index 42067200cd..b2591901fc 100755 --- a/keyboards/binepad/bnr1/info.json +++ b/keyboards/binepad/bnr1/info.json @@ -4,8 +4,6 @@ "maintainer": "Binpad", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/binepad/pixie/keyboard.json b/keyboards/binepad/pixie/keyboard.json index 7d9d2ceb9a..8017121006 100644 --- a/keyboards/binepad/pixie/keyboard.json +++ b/keyboards/binepad/pixie/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/bioi/f60/keyboard.json b/keyboards/bioi/f60/keyboard.json index 8974a68e02..1ad2f89cf8 100644 --- a/keyboards/bioi/f60/keyboard.json +++ b/keyboards/bioi/f60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BIOI F60", "manufacturer": "Basic IO Instruments", - "url": "", "maintainer": "kb-elmo", "usb": { "vid": "0x8101", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/bioi/g60ble/keyboard.json b/keyboards/bioi/g60ble/keyboard.json index 8b24556b37..ad1aed6048 100644 --- a/keyboards/bioi/g60ble/keyboard.json +++ b/keyboards/bioi/g60ble/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BIOI G60 BLE", "manufacturer": "Basic IO Instruments", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x6583", diff --git a/keyboards/bioi/morgan65/keyboard.json b/keyboards/bioi/morgan65/keyboard.json index 5606233f2a..0182392706 100644 --- a/keyboards/bioi/morgan65/keyboard.json +++ b/keyboards/bioi/morgan65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Morgan65", "manufacturer": "Basic IO Instruments", - "url": "", "maintainer": "scottywei", "usb": { "vid": "0x8101", diff --git a/keyboards/bioi/s65/keyboard.json b/keyboards/bioi/s65/keyboard.json index 56d53b54cf..c07fd9158d 100644 --- a/keyboards/bioi/s65/keyboard.json +++ b/keyboards/bioi/s65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BIOI S65", "manufacturer": "Basic IO Instruments", - "url": "", "maintainer": "scottywei", "usb": { "vid": "0x8101", @@ -14,7 +13,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/black_hellebore/keyboard.json b/keyboards/black_hellebore/keyboard.json index b59cb8f7b9..e93b6c05f5 100644 --- a/keyboards/black_hellebore/keyboard.json +++ b/keyboards/black_hellebore/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/blackplum/keyboard.json b/keyboards/blackplum/keyboard.json index 277e0eae62..4fabde8535 100644 --- a/keyboards/blackplum/keyboard.json +++ b/keyboards/blackplum/keyboard.json @@ -32,8 +32,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/blank/blank01/keyboard.json b/keyboards/blank/blank01/keyboard.json index 672a292def..0e7e7d1de5 100644 --- a/keyboards/blank/blank01/keyboard.json +++ b/keyboards/blank/blank01/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BLANK.01", "manufacturer": "BLANK", - "url": "", "maintainer": "gkeyboard", "usb": { "vid": "0x424C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/blaster75/keyboard.json b/keyboards/blaster75/keyboard.json index 81cc789da6..f0b3a5fccf 100644 --- a/keyboards/blaster75/keyboard.json +++ b/keyboards/blaster75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Blaster 75", "manufacturer": "Altain", - "url": "", "maintainer": "Altain", "usb": { "vid": "0xA122", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": false, "mousekey": false, diff --git a/keyboards/blockboy/ac980mini/keyboard.json b/keyboards/blockboy/ac980mini/keyboard.json index ad844102dc..ce261639e2 100644 --- a/keyboards/blockboy/ac980mini/keyboard.json +++ b/keyboards/blockboy/ac980mini/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, @@ -21,7 +19,6 @@ "rows": ["D0", "D1", "D2", "D3", "D5"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x6060", diff --git a/keyboards/blockey/keyboard.json b/keyboards/blockey/keyboard.json index 9710606a52..e9c5ceafa1 100644 --- a/keyboards/blockey/keyboard.json +++ b/keyboards/blockey/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BlocKey", "manufacturer": "Eucalyn", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/boardrun/bizarre/keyboard.json b/keyboards/boardrun/bizarre/keyboard.json index f61f3b053f..22ddfb005d 100644 --- a/keyboards/boardrun/bizarre/keyboard.json +++ b/keyboards/boardrun/bizarre/keyboard.json @@ -33,7 +33,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/boardrun/classic/keyboard.json b/keyboards/boardrun/classic/keyboard.json index be21483c8e..bdddee8067 100644 --- a/keyboards/boardrun/classic/keyboard.json +++ b/keyboards/boardrun/classic/keyboard.json @@ -32,8 +32,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/boardsource/beiwagon/keyboard.json b/keyboards/boardsource/beiwagon/keyboard.json index 39a9006b85..0bfa159a8a 100644 --- a/keyboards/boardsource/beiwagon/keyboard.json +++ b/keyboards/boardsource/beiwagon/keyboard.json @@ -61,24 +61,24 @@ }, "driver": "ws2812", "layout": [ - {"flags": 2, "x": 16, "y": 38}, - {"flags": 2, "x": 16, "y": 113}, - {"flags": 2, "x": 16, "y": 188}, - {"flags": 2, "x": 48, "y": 38}, - {"flags": 2, "x": 48, "y": 113}, - {"flags": 2, "x": 48, "y": 188}, - {"flags": 4, "matrix": [0, 0], "x": 0, "y": 0}, - {"flags": 4, "matrix": [0, 1], "x": 32, "y": 0}, - {"flags": 4, "matrix": [0, 2], "x": 64, "y": 0}, - {"flags": 4, "matrix": [1, 0], "x": 0, "y": 75}, - {"flags": 4, "matrix": [1, 1], "x": 32, "y": 75}, - {"flags": 4, "matrix": [1, 2], "x": 64, "y": 75}, - {"flags": 4, "matrix": [2, 0], "x": 0, "y": 150}, - {"flags": 4, "matrix": [2, 1], "x": 32, "y": 150}, - {"flags": 4, "matrix": [2, 2], "x": 64, "y": 150}, - {"flags": 4, "matrix": [3, 0], "x": 0, "y": 224}, - {"flags": 4, "matrix": [3, 1], "x": 32, "y": 224}, - {"flags": 4, "matrix": [3, 2], "x": 64, "y": 224} + {"x": 200, "y": 11, "flags": 2}, + {"x": 200, "y": 32, "flags": 2}, + {"x": 200, "y": 52, "flags": 2}, + {"x": 24, "y": 52, "flags": 2}, + {"x": 24, "y": 32, "flags": 2}, + {"x": 24, "y": 11, "flags": 2}, + {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4}, + {"matrix": [0, 1], "x": 112, "y": 0, "flags": 4}, + {"matrix": [0, 2], "x": 224, "y": 0, "flags": 4}, + {"matrix": [1, 0], "x": 0, "y": 21, "flags": 4}, + {"matrix": [1, 1], "x": 112, "y": 21, "flags": 4}, + {"matrix": [1, 2], "x": 224, "y": 21, "flags": 4}, + {"matrix": [2, 0], "x": 0, "y": 42, "flags": 4}, + {"matrix": [2, 1], "x": 112, "y": 42, "flags": 4}, + {"matrix": [2, 2], "x": 224, "y": 42, "flags": 4}, + {"matrix": [3, 0], "x": 0, "y": 64, "flags": 4}, + {"matrix": [3, 1], "x": 112, "y": 64, "flags": 4}, + {"matrix": [3, 2], "x": 224, "y": 64, "flags": 4} ] }, "layouts": { diff --git a/keyboards/boardsource/beiwagon/keymaps/default/keymap.c b/keyboards/boardsource/beiwagon/keymaps/default/keymap.c deleted file mode 100644 index 4f799550e1..0000000000 --- a/keyboards/boardsource/beiwagon/keymaps/default/keymap.c +++ /dev/null @@ -1,40 +0,0 @@ -/* Copyright 2022 Boardsource - * - * 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 QMK_KEYBOARD_H - -enum layers { - _MAIN, - _RAISE -}; - -#define LOWER MO(_LOWER) -#define RAISE MO(_RAISE) - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_MAIN] = LAYOUT( - KC_7, KC_8, KC_9, - KC_4, KC_5, KC_6, - KC_1, KC_2, KC_3, - KC_0, KC_PENT,RAISE - ), - [_RAISE] = LAYOUT( - KC_7, KC_8, RM_TOGG, - KC_4, KC_5, RM_NEXT, - KC_1, KC_2, KC_3, - KC_0, KC_PENT,_______ - ) -}; diff --git a/keyboards/boardsource/beiwagon/keymaps/default/keymap.json b/keyboards/boardsource/beiwagon/keymaps/default/keymap.json new file mode 100644 index 0000000000..b6ba14a076 --- /dev/null +++ b/keyboards/boardsource/beiwagon/keymaps/default/keymap.json @@ -0,0 +1,19 @@ +{ + "keyboard": "boardsource/beiwagon", + "keymap": "default", + "layout": "LAYOUT", + "layers": [ + [ + "KC_7", "KC_8", "KC_9", + "KC_4", "KC_5", "KC_6", + "KC_1", "KC_2", "KC_3", + "KC_0", "KC_PENT", "MO(1)" + ], + [ + "QK_BOOT", "_______", "RM_TOGG", + "_______", "_______", "RM_NEXT", + "_______", "_______", "_______", + "_______", "_______", "_______" + ] + ] +} diff --git a/keyboards/boardwalk/keyboard.json b/keyboards/boardwalk/keyboard.json index 6fb7673ec8..50a00b0f65 100644 --- a/keyboards/boardwalk/keyboard.json +++ b/keyboards/boardwalk/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Boardwalk", "manufacturer": "shensmobile", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xCDCD", @@ -32,7 +31,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/bobpad/keyboard.json b/keyboards/bobpad/keyboard.json index feddbbf222..2581097a67 100644 --- a/keyboards/bobpad/keyboard.json +++ b/keyboards/bobpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "bobPad", "manufacturer": "Desiboards", - "url": "", "maintainer": "Ananya Kirti", "usb": { "vid": "0x416B", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/bolsa/bolsalice/keyboard.json b/keyboards/bolsa/bolsalice/keyboard.json index 8ada9b5546..74607ed464 100644 --- a/keyboards/bolsa/bolsalice/keyboard.json +++ b/keyboards/bolsa/bolsalice/keyboard.json @@ -28,8 +28,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -42,7 +40,6 @@ "diode_direction": "COL2ROW", "processor": "atmega32u4", "bootloader": "atmel-dfu", - "url": "", "maintainer": "qmk", "community_layouts": ["alice", "alice_split_bs"], "layouts": { diff --git a/keyboards/bolsa/damapad/keyboard.json b/keyboards/bolsa/damapad/keyboard.json index 5a47d12322..b48e8c3586 100644 --- a/keyboards/bolsa/damapad/keyboard.json +++ b/keyboards/bolsa/damapad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Damapad", "manufacturer": "Bolsa Keyboard Supply", - "url": "", "maintainer": "matthewdias", "usb": { "vid": "0x6D64", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/bop/keyboard.json b/keyboards/bop/keyboard.json index 6a88bb4617..f94264a670 100644 --- a/keyboards/bop/keyboard.json +++ b/keyboards/bop/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/boston/keyboard.json b/keyboards/boston/keyboard.json index 050076c7a6..f32101ca2e 100644 --- a/keyboards/boston/keyboard.json +++ b/keyboards/boston/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/boston_meetup/2019/keyboard.json b/keyboards/boston_meetup/2019/keyboard.json index 40a390b0a8..4f07e0c631 100644 --- a/keyboards/boston_meetup/2019/keyboard.json +++ b/keyboards/boston_meetup/2019/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Boston Meetup Board", "manufacturer": "ishtob", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFB30", diff --git a/keyboards/botanicalkeyboards/fm2u/keyboard.json b/keyboards/botanicalkeyboards/fm2u/keyboard.json index 907d5d46b8..8c2714ade3 100644 --- a/keyboards/botanicalkeyboards/fm2u/keyboard.json +++ b/keyboards/botanicalkeyboards/fm2u/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "FM2U", "manufacturer": "Botanical Keyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x6969", diff --git a/keyboards/box75/keyboard.json b/keyboards/box75/keyboard.json index 89afff1716..9c5c245f20 100644 --- a/keyboards/box75/keyboard.json +++ b/keyboards/box75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BOX75", "manufacturer": "Lin Design", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x7668", diff --git a/keyboards/bpiphany/four_banger/keyboard.json b/keyboards/bpiphany/four_banger/keyboard.json index a368fbfe61..b94bdf2e90 100644 --- a/keyboards/bpiphany/four_banger/keyboard.json +++ b/keyboards/bpiphany/four_banger/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Four Banger", "manufacturer": "1up Keyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/bpiphany/frosty_flake/20130602/keyboard.json b/keyboards/bpiphany/frosty_flake/20130602/keyboard.json index 142010c9c4..a5efb2e322 100644 --- a/keyboards/bpiphany/frosty_flake/20130602/keyboard.json +++ b/keyboards/bpiphany/frosty_flake/20130602/keyboard.json @@ -1,8 +1,6 @@ { "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/bpiphany/frosty_flake/20140521/keyboard.json b/keyboards/bpiphany/frosty_flake/20140521/keyboard.json index 2ca004c24d..33f9ee5f3d 100644 --- a/keyboards/bpiphany/frosty_flake/20140521/keyboard.json +++ b/keyboards/bpiphany/frosty_flake/20140521/keyboard.json @@ -1,8 +1,6 @@ { "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/bpiphany/frosty_flake/info.json b/keyboards/bpiphany/frosty_flake/info.json index 33a2f792d9..bfec449931 100644 --- a/keyboards/bpiphany/frosty_flake/info.json +++ b/keyboards/bpiphany/frosty_flake/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Frosty Flake", "manufacturer": "Bathroom Epiphanies", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/bpiphany/ghost_squid/keyboard.json b/keyboards/bpiphany/ghost_squid/keyboard.json index 85f6f0fa8e..68901ba316 100644 --- a/keyboards/bpiphany/ghost_squid/keyboard.json +++ b/keyboards/bpiphany/ghost_squid/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ghost Squid", "manufacturer": "Bathroom Epiphanies", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/bpiphany/hid_liber/keyboard.json b/keyboards/bpiphany/hid_liber/keyboard.json index 67c8416849..2f8f3ea4ce 100644 --- a/keyboards/bpiphany/hid_liber/keyboard.json +++ b/keyboards/bpiphany/hid_liber/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "HIDLiberation", "manufacturer": "bpiphany", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/bpiphany/kitten_paw/keyboard.json b/keyboards/bpiphany/kitten_paw/keyboard.json index 829129d406..42c6cb8732 100644 --- a/keyboards/bpiphany/kitten_paw/keyboard.json +++ b/keyboards/bpiphany/kitten_paw/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Kitten Paw", "manufacturer": "bpiphany", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/bpiphany/pegasushoof/info.json b/keyboards/bpiphany/pegasushoof/info.json index 1e9e9db306..a28f68e63e 100644 --- a/keyboards/bpiphany/pegasushoof/info.json +++ b/keyboards/bpiphany/pegasushoof/info.json @@ -1,6 +1,5 @@ { "manufacturer": "Filco", - "url": "", "maintainer": "qmk", "features": { "bootmagic": true, diff --git a/keyboards/bpiphany/sixshooter/keyboard.json b/keyboards/bpiphany/sixshooter/keyboard.json index 21e52f3629..b84e8f5c5d 100644 --- a/keyboards/bpiphany/sixshooter/keyboard.json +++ b/keyboards/bpiphany/sixshooter/keyboard.json @@ -12,8 +12,6 @@ "bootloader": "halfkay", "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/bpiphany/tiger_lily/keyboard.json b/keyboards/bpiphany/tiger_lily/keyboard.json index 118f89f39d..f260f84c71 100644 --- a/keyboards/bpiphany/tiger_lily/keyboard.json +++ b/keyboards/bpiphany/tiger_lily/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "tiger_lily", "manufacturer": "Bathroom Epiphanies", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4245", diff --git a/keyboards/bredworks/wyvern_hs/keyboard.json b/keyboards/bredworks/wyvern_hs/keyboard.json index 63e85496ae..c5233c304a 100644 --- a/keyboards/bredworks/wyvern_hs/keyboard.json +++ b/keyboards/bredworks/wyvern_hs/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/bschwind/key_ripper/keyboard.json b/keyboards/bschwind/key_ripper/keyboard.json index ee30687d4f..f9dbf9d6cb 100644 --- a/keyboards/bschwind/key_ripper/keyboard.json +++ b/keyboards/bschwind/key_ripper/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/bt66tech/bt66tech60/keyboard.json b/keyboards/bt66tech/bt66tech60/keyboard.json index 778e27fe67..9f747397c3 100644 --- a/keyboards/bt66tech/bt66tech60/keyboard.json +++ b/keyboards/bt66tech/bt66tech60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "bt66tech 60%", "manufacturer": "bt66tech", - "url": "", "maintainer": "bt66tech", "usb": { "vid": "0x4254", diff --git a/keyboards/bthlabs/geekpad/keyboard.json b/keyboards/bthlabs/geekpad/keyboard.json index 43ce11edf5..1ea302612a 100644 --- a/keyboards/bthlabs/geekpad/keyboard.json +++ b/keyboards/bthlabs/geekpad/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/bubble75/hotswap/keyboard.json b/keyboards/bubble75/hotswap/keyboard.json index 011ce33ec4..92f57144ce 100644 --- a/keyboards/bubble75/hotswap/keyboard.json +++ b/keyboards/bubble75/hotswap/keyboard.json @@ -1,6 +1,5 @@ { "keyboard_name": "bubble75", - "url": "", "manufacturer": "phl", "maintainer": "velocifire", "usb": { diff --git a/keyboards/budgy/keyboard.json b/keyboards/budgy/keyboard.json index 0dc45c9da0..d43e02fdc0 100644 --- a/keyboards/budgy/keyboard.json +++ b/keyboards/budgy/keyboard.json @@ -5,14 +5,11 @@ "bootloader": "rp2040", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0117", diff --git a/keyboards/buildakb/mw60/keyboard.json b/keyboards/buildakb/mw60/keyboard.json index 9969768345..00e21a0335 100644 --- a/keyboards/buildakb/mw60/keyboard.json +++ b/keyboards/buildakb/mw60/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["E6", "D1", "F7", "F4", "F1"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0004", diff --git a/keyboards/buildakb/potato65/keyboard.json b/keyboards/buildakb/potato65/keyboard.json index db20353142..c78ee1948e 100644 --- a/keyboards/buildakb/potato65/keyboard.json +++ b/keyboards/buildakb/potato65/keyboard.json @@ -32,8 +32,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/buildakb/potato65hs/keyboard.json b/keyboards/buildakb/potato65hs/keyboard.json index 9e5edd6adb..3a91ac1ccc 100644 --- a/keyboards/buildakb/potato65hs/keyboard.json +++ b/keyboards/buildakb/potato65hs/keyboard.json @@ -32,8 +32,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/buildakb/potato65s/keyboard.json b/keyboards/buildakb/potato65s/keyboard.json index 8dd9b6cc53..3ff7187962 100644 --- a/keyboards/buildakb/potato65s/keyboard.json +++ b/keyboards/buildakb/potato65s/keyboard.json @@ -32,8 +32,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/butterkeebs/pocketpad/keyboard.json b/keyboards/butterkeebs/pocketpad/keyboard.json index 0b42d5fb17..0829f91438 100644 --- a/keyboards/butterkeebs/pocketpad/keyboard.json +++ b/keyboards/butterkeebs/pocketpad/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cablecardesigns/cypher/rev6/keyboard.json b/keyboards/cablecardesigns/cypher/rev6/keyboard.json index 644f2f1aa6..f6e481c1df 100644 --- a/keyboards/cablecardesigns/cypher/rev6/keyboard.json +++ b/keyboards/cablecardesigns/cypher/rev6/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cablecardesigns/phoenix/keyboard.json b/keyboards/cablecardesigns/phoenix/keyboard.json index 0d2ea10ad6..a165758ad0 100755 --- a/keyboards/cablecardesigns/phoenix/keyboard.json +++ b/keyboards/cablecardesigns/phoenix/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/caffeinated/serpent65/keyboard.json b/keyboards/caffeinated/serpent65/keyboard.json index add4854720..7ea4957921 100644 --- a/keyboards/caffeinated/serpent65/keyboard.json +++ b/keyboards/caffeinated/serpent65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Serpent65", "manufacturer": "Caffeinated Studios", - "url": "", "maintainer": "jrfhoutx", "usb": { "vid": "0x4353", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/canary/canary60rgb/v1/keyboard.json b/keyboards/canary/canary60rgb/v1/keyboard.json index ac1ba67de0..a1247769e6 100644 --- a/keyboards/canary/canary60rgb/v1/keyboard.json +++ b/keyboards/canary/canary60rgb/v1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "CANARY60RGB", "manufacturer": "CANARY", - "url": "", "maintainer": "tuananhnguyen204", "usb": { "vid": "0x4341", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/cannonkeys/adelie/keyboard.json b/keyboards/cannonkeys/adelie/keyboard.json index 6b36af3082..136c0d362f 100644 --- a/keyboards/cannonkeys/adelie/keyboard.json +++ b/keyboards/cannonkeys/adelie/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Adelie", "manufacturer": "Abec13", - "url": "", "maintainer": "Abec13", "usb": { "vid": "0xCA04", @@ -31,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/cannonkeys/atlas_alps/keyboard.json b/keyboards/cannonkeys/atlas_alps/keyboard.json index 39bfa968b9..f70ce60acc 100644 --- a/keyboards/cannonkeys/atlas_alps/keyboard.json +++ b/keyboards/cannonkeys/atlas_alps/keyboard.json @@ -32,8 +32,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cannonkeys/bakeneko60_iso_hs/keyboard.json b/keyboards/cannonkeys/bakeneko60_iso_hs/keyboard.json index cba8980b9d..4865ca02b6 100644 --- a/keyboards/cannonkeys/bakeneko60_iso_hs/keyboard.json +++ b/keyboards/cannonkeys/bakeneko60_iso_hs/keyboard.json @@ -16,8 +16,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cannonkeys/bakeneko65_iso_hs/keyboard.json b/keyboards/cannonkeys/bakeneko65_iso_hs/keyboard.json index c8ef323906..f9cc28f864 100644 --- a/keyboards/cannonkeys/bakeneko65_iso_hs/keyboard.json +++ b/keyboards/cannonkeys/bakeneko65_iso_hs/keyboard.json @@ -15,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cannonkeys/bastion60/keyboard.json b/keyboards/cannonkeys/bastion60/keyboard.json index 26cf507984..518d332ce0 100644 --- a/keyboards/cannonkeys/bastion60/keyboard.json +++ b/keyboards/cannonkeys/bastion60/keyboard.json @@ -13,8 +13,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cannonkeys/bastion65/keyboard.json b/keyboards/cannonkeys/bastion65/keyboard.json index dd7dd4516e..4d13309331 100644 --- a/keyboards/cannonkeys/bastion65/keyboard.json +++ b/keyboards/cannonkeys/bastion65/keyboard.json @@ -13,8 +13,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cannonkeys/bastion75/keyboard.json b/keyboards/cannonkeys/bastion75/keyboard.json index 276cc03c51..3c96e4f943 100644 --- a/keyboards/cannonkeys/bastion75/keyboard.json +++ b/keyboards/cannonkeys/bastion75/keyboard.json @@ -17,8 +17,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cannonkeys/bastiontkl/keyboard.json b/keyboards/cannonkeys/bastiontkl/keyboard.json index 72733b3d8f..9617bce56c 100644 --- a/keyboards/cannonkeys/bastiontkl/keyboard.json +++ b/keyboards/cannonkeys/bastiontkl/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cannonkeys/brutalv2_1800/keyboard.json b/keyboards/cannonkeys/brutalv2_1800/keyboard.json index 13f1b12733..0fd9204be9 100644 --- a/keyboards/cannonkeys/brutalv2_1800/keyboard.json +++ b/keyboards/cannonkeys/brutalv2_1800/keyboard.json @@ -17,8 +17,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cannonkeys/caerdroia/keyboard.json b/keyboards/cannonkeys/caerdroia/keyboard.json index 4b5baf21dd..0fec202dea 100644 --- a/keyboards/cannonkeys/caerdroia/keyboard.json +++ b/keyboards/cannonkeys/caerdroia/keyboard.json @@ -17,8 +17,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cannonkeys/chimera65_hs/keyboard.json b/keyboards/cannonkeys/chimera65_hs/keyboard.json index a126a007b5..fd5c7dd84a 100644 --- a/keyboards/cannonkeys/chimera65_hs/keyboard.json +++ b/keyboards/cannonkeys/chimera65_hs/keyboard.json @@ -19,8 +19,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cannonkeys/ellipse/keyboard.json b/keyboards/cannonkeys/ellipse/keyboard.json index c7e37befbd..dc99210b88 100644 --- a/keyboards/cannonkeys/ellipse/keyboard.json +++ b/keyboards/cannonkeys/ellipse/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cannonkeys/ellipse_hs/keyboard.json b/keyboards/cannonkeys/ellipse_hs/keyboard.json index da79dea27a..fba7abf9ea 100644 --- a/keyboards/cannonkeys/ellipse_hs/keyboard.json +++ b/keyboards/cannonkeys/ellipse_hs/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cannonkeys/hoodrowg/keyboard.json b/keyboards/cannonkeys/hoodrowg/keyboard.json index 971779411d..73d4370c4a 100644 --- a/keyboards/cannonkeys/hoodrowg/keyboard.json +++ b/keyboards/cannonkeys/hoodrowg/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/cannonkeys/leviatan/keyboard.json b/keyboards/cannonkeys/leviatan/keyboard.json index c929447e89..f68ca0ef2c 100644 --- a/keyboards/cannonkeys/leviatan/keyboard.json +++ b/keyboards/cannonkeys/leviatan/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cannonkeys/lib/satisfaction75/satisfaction_core.c b/keyboards/cannonkeys/lib/satisfaction75/satisfaction_core.c index 6f76582e4b..a410480d7d 100644 --- a/keyboards/cannonkeys/lib/satisfaction75/satisfaction_core.c +++ b/keyboards/cannonkeys/lib/satisfaction75/satisfaction_core.c @@ -53,10 +53,26 @@ void board_init(void) { SYSCFG->CFGR1 &= ~(SYSCFG_CFGR1_SPI2_DMA_RMP); } +uint32_t read_custom_config(void *data, uint32_t offset, uint32_t length) { +#ifdef VIA_ENABLE + return via_read_custom_config(data, offset, length); +#else + return eeconfig_read_kb_datablock(data, offset, length); +#endif +} + +uint32_t write_custom_config(const void *data, uint32_t offset, uint32_t length) { +#ifdef VIA_ENABLE + return via_update_custom_config(data, offset, length); +#else + return eeconfig_update_kb_datablock(data, offset, length); +#endif +} + void keyboard_post_init_kb(void) { /* This is a workaround to some really weird behavior - Without this code, the OLED will turn on, but not when you initially plug the keyboard in. + Without this code, the OLED will turn on, but not when you initially plug the keyboard in. You have to manually trigger a user reset to get the OLED to initialize properly I'm not sure what the root cause is at this time, but this workaround fixes it. */ @@ -74,11 +90,11 @@ void keyboard_post_init_kb(void) { void custom_set_value(uint8_t *data) { uint8_t *value_id = &(data[0]); uint8_t *value_data = &(data[1]); - + switch ( *value_id ) { case id_oled_default_mode: { - eeprom_update_byte((uint8_t*)EEPROM_DEFAULT_OLED, value_data[0]); + write_custom_config(&value_data[0], EEPROM_DEFAULT_OLED_OFFSET, 1); break; } case id_oled_mode: @@ -92,7 +108,7 @@ void custom_set_value(uint8_t *data) { uint8_t index = value_data[0]; uint8_t enable = value_data[1]; enabled_encoder_modes = (enabled_encoder_modes & ~(1<<index)) | (enable<<index); - eeprom_update_byte((uint8_t*)EEPROM_ENABLED_ENCODER_MODES, enabled_encoder_modes); + write_custom_config(&enabled_encoder_modes, EEPROM_ENABLED_ENCODER_MODES_OFFSET, 1); break; } case id_encoder_custom: @@ -109,11 +125,12 @@ void custom_set_value(uint8_t *data) { void custom_get_value(uint8_t *data) { uint8_t *value_id = &(data[0]); uint8_t *value_data = &(data[1]); - + switch ( *value_id ) { case id_oled_default_mode: { - uint8_t default_oled = eeprom_read_byte((uint8_t*)EEPROM_DEFAULT_OLED); + uint8_t default_oled; + read_custom_config(&default_oled, EEPROM_DEFAULT_OLED_OFFSET, 1); value_data[0] = default_oled; break; } @@ -179,7 +196,6 @@ void via_custom_value_command_kb(uint8_t *data, uint8_t length) { } #endif - void read_host_led_state(void) { led_t led_state = host_keyboard_led_state(); if (led_state.num_lock) { @@ -290,25 +306,25 @@ bool encoder_update_kb(uint8_t index, bool clockwise) { } void custom_config_reset(void){ - void *p = (void*)(VIA_EEPROM_CUSTOM_CONFIG_ADDR); - void *end = (void*)(VIA_EEPROM_CUSTOM_CONFIG_ADDR+VIA_EEPROM_CUSTOM_CONFIG_SIZE); - while ( p != end ) { - eeprom_update_byte(p, 0); - ++p; + for(int i = 0; i < VIA_EEPROM_CUSTOM_CONFIG_SIZE; ++i) { + uint8_t dummy = 0; + write_custom_config(&dummy, i, 1); } - eeprom_update_byte((uint8_t*)EEPROM_ENABLED_ENCODER_MODES, 0x1F); + + uint8_t encoder_modes = 0x1F; + write_custom_config(&encoder_modes, EEPROM_ENABLED_ENCODER_MODES_OFFSET, 1); } void custom_config_load(void){ #ifdef DYNAMIC_KEYMAP_ENABLE - oled_mode = eeprom_read_byte((uint8_t*)EEPROM_DEFAULT_OLED); - enabled_encoder_modes = eeprom_read_byte((uint8_t*)EEPROM_ENABLED_ENCODER_MODES); + read_custom_config(&oled_mode, EEPROM_DEFAULT_OLED_OFFSET, 1); + read_custom_config(&enabled_encoder_modes, EEPROM_ENABLED_ENCODER_MODES_OFFSET, 1); #endif } // Called from via_init() if VIA_ENABLE // Called from matrix_init_kb() if not VIA_ENABLE -void via_init_kb(void) +void satisfaction_core_init(void) { // This checks both an EEPROM reset (from bootmagic lite, keycodes) // and also firmware build date (from via_eeprom_is_valid()) @@ -326,8 +342,7 @@ void via_init_kb(void) void matrix_init_kb(void) { #ifndef VIA_ENABLE - via_init_kb(); - via_eeprom_set_valid(true); + satisfaction_core_init(); #endif // VIA_ENABLE rtcGetTime(&RTCD1, &last_timespec); @@ -335,6 +350,11 @@ void matrix_init_kb(void) oled_request_wakeup(); } +#ifdef VIA_ENABLE +void via_init_kb(void) { + satisfaction_core_init(); +} +#endif // VIA_ENABLE void housekeeping_task_kb(void) { rtcGetTime(&RTCD1, &last_timespec); @@ -345,52 +365,3 @@ void housekeeping_task_kb(void) { oled_request_repaint(); } } - -// -// In the case of VIA being disabled, we still need to check if -// keyboard level EEPROM memory is valid before loading. -// Thus these are copies of the same functions in VIA, since -// the backlight settings reuse VIA's EEPROM magic/version, -// and the ones in via.c won't be compiled in. -// -// Yes, this is sub-optimal, and is only here for completeness -// (i.e. catering to the 1% of people that want wilba.tech LED bling -// AND want persistent settings BUT DON'T want to use dynamic keymaps/VIA). -// -#ifndef VIA_ENABLE - -bool via_eeprom_is_valid(void) -{ - char *p = QMK_BUILDDATE; // e.g. "2019-11-05-11:29:54" - uint8_t magic0 = ( ( p[2] & 0x0F ) << 4 ) | ( p[3] & 0x0F ); - uint8_t magic1 = ( ( p[5] & 0x0F ) << 4 ) | ( p[6] & 0x0F ); - uint8_t magic2 = ( ( p[8] & 0x0F ) << 4 ) | ( p[9] & 0x0F ); - - return (eeprom_read_byte( (void*)VIA_EEPROM_MAGIC_ADDR+0 ) == magic0 && - eeprom_read_byte( (void*)VIA_EEPROM_MAGIC_ADDR+1 ) == magic1 && - eeprom_read_byte( (void*)VIA_EEPROM_MAGIC_ADDR+2 ) == magic2 ); -} - -// Sets VIA/keyboard level usage of EEPROM to valid/invalid -// Keyboard level code (eg. via_init_kb()) should not call this -void via_eeprom_set_valid(bool valid) -{ - char *p = QMK_BUILDDATE; // e.g. "2019-11-05-11:29:54" - uint8_t magic0 = ( ( p[2] & 0x0F ) << 4 ) | ( p[3] & 0x0F ); - uint8_t magic1 = ( ( p[5] & 0x0F ) << 4 ) | ( p[6] & 0x0F ); - uint8_t magic2 = ( ( p[8] & 0x0F ) << 4 ) | ( p[9] & 0x0F ); - - eeprom_update_byte( (void*)VIA_EEPROM_MAGIC_ADDR+0, valid ? magic0 : 0xFF); - eeprom_update_byte( (void*)VIA_EEPROM_MAGIC_ADDR+1, valid ? magic1 : 0xFF); - eeprom_update_byte( (void*)VIA_EEPROM_MAGIC_ADDR+2, valid ? magic2 : 0xFF); -} - -void via_eeprom_reset(void) -{ - // Set the VIA specific EEPROM state as invalid. - via_eeprom_set_valid(false); - // Set the TMK/QMK EEPROM state as invalid. - eeconfig_disable(); -} - -#endif // VIA_ENABLE diff --git a/keyboards/cannonkeys/lib/satisfaction75/satisfaction_core.h b/keyboards/cannonkeys/lib/satisfaction75/satisfaction_core.h index 70ee2a3fda..163aa27fad 100644 --- a/keyboards/cannonkeys/lib/satisfaction75/satisfaction_core.h +++ b/keyboards/cannonkeys/lib/satisfaction75/satisfaction_core.h @@ -6,12 +6,14 @@ #include <stdint.h> #include <stdbool.h> +#include <hal.h> + #include "via.h" // only for EEPROM address #include "satisfaction_keycodes.h" -#define EEPROM_ENABLED_ENCODER_MODES (VIA_EEPROM_CUSTOM_CONFIG_ADDR) -#define EEPROM_DEFAULT_OLED (VIA_EEPROM_CUSTOM_CONFIG_ADDR+1) -#define EEPROM_CUSTOM_ENCODER (VIA_EEPROM_CUSTOM_CONFIG_ADDR+2) +#define EEPROM_ENABLED_ENCODER_MODES_OFFSET 0 +#define EEPROM_DEFAULT_OLED_OFFSET 1 +#define EEPROM_CUSTOM_ENCODER_OFFSET 2 enum s75_keyboard_value_id { id_encoder_modes = 1, @@ -94,3 +96,6 @@ void oled_request_repaint(void); bool oled_task_needs_to_repaint(void); void custom_config_load(void); + +uint32_t read_custom_config(void *data, uint32_t offset, uint32_t length); +uint32_t write_custom_config(const void *data, uint32_t offset, uint32_t length); diff --git a/keyboards/cannonkeys/lib/satisfaction75/satisfaction_encoder.c b/keyboards/cannonkeys/lib/satisfaction75/satisfaction_encoder.c index 7e0b82e9e7..87ff87ea66 100644 --- a/keyboards/cannonkeys/lib/satisfaction75/satisfaction_encoder.c +++ b/keyboards/cannonkeys/lib/satisfaction75/satisfaction_encoder.c @@ -215,10 +215,13 @@ uint16_t handle_encoder_press(void){ uint16_t retrieve_custom_encoder_config(uint8_t encoder_idx, uint8_t behavior){ #ifdef DYNAMIC_KEYMAP_ENABLE - void* addr = (void*)(EEPROM_CUSTOM_ENCODER + (encoder_idx * 6) + (behavior * 2)); + uint32_t offset = EEPROM_CUSTOM_ENCODER_OFFSET + (encoder_idx * 6) + (behavior * 2); //big endian - uint16_t keycode = eeprom_read_byte(addr) << 8; - keycode |= eeprom_read_byte(addr + 1); + uint8_t hi, lo; + read_custom_config(&hi, offset+0, 1); + read_custom_config(&lo, offset+1, 1); + uint16_t keycode = hi << 8; + keycode |= lo; return keycode; #else return 0; @@ -227,8 +230,10 @@ uint16_t retrieve_custom_encoder_config(uint8_t encoder_idx, uint8_t behavior){ void set_custom_encoder_config(uint8_t encoder_idx, uint8_t behavior, uint16_t new_code){ #ifdef DYNAMIC_KEYMAP_ENABLE - void* addr = (void*)(EEPROM_CUSTOM_ENCODER + (encoder_idx * 6) + (behavior * 2)); - eeprom_update_byte(addr, (uint8_t)(new_code >> 8)); - eeprom_update_byte(addr + 1, (uint8_t)(new_code & 0xFF)); + uint32_t offset = EEPROM_CUSTOM_ENCODER_OFFSET + (encoder_idx * 6) + (behavior * 2); + uint8_t hi = new_code >> 8; + uint8_t lo = new_code & 0xFF; + write_custom_config(&hi, offset+0, 1); + write_custom_config(&lo, offset+1, 1); #endif } diff --git a/keyboards/cannonkeys/lib/satisfaction75/satisfaction_oled.c b/keyboards/cannonkeys/lib/satisfaction75/satisfaction_oled.c index 0361453c52..815e84901d 100644 --- a/keyboards/cannonkeys/lib/satisfaction75/satisfaction_oled.c +++ b/keyboards/cannonkeys/lib/satisfaction75/satisfaction_oled.c @@ -8,7 +8,6 @@ #include "matrix.h" #include "led.h" #include "host.h" -#include "oled_driver.h" #include "progmem.h" #include <stdio.h> @@ -16,6 +15,7 @@ void draw_default(void); void draw_clock(void); #ifdef OLED_ENABLE +#include "oled_driver.h" oled_rotation_t oled_init_kb(oled_rotation_t rotation) { return OLED_ROTATION_0; } diff --git a/keyboards/cannonkeys/meetuppad2023/keyboard.json b/keyboards/cannonkeys/meetuppad2023/keyboard.json index e55d4361d8..ae393ecb2c 100644 --- a/keyboards/cannonkeys/meetuppad2023/keyboard.json +++ b/keyboards/cannonkeys/meetuppad2023/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cannonkeys/moment/keyboard.json b/keyboards/cannonkeys/moment/keyboard.json index 4aec3c9c06..1585403293 100644 --- a/keyboards/cannonkeys/moment/keyboard.json +++ b/keyboards/cannonkeys/moment/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cannonkeys/moment_hs/keyboard.json b/keyboards/cannonkeys/moment_hs/keyboard.json index dc1f650322..4a55026974 100644 --- a/keyboards/cannonkeys/moment_hs/keyboard.json +++ b/keyboards/cannonkeys/moment_hs/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cannonkeys/nearfield/keyboard.json b/keyboards/cannonkeys/nearfield/keyboard.json index e516198f09..0d49846394 100644 --- a/keyboards/cannonkeys/nearfield/keyboard.json +++ b/keyboards/cannonkeys/nearfield/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Nearfield", "manufacturer": "JLC", - "url": "", "maintainer": "tominabox1", "usb": { "vid": "0x0004", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cannonkeys/ortho48/keyboard.json b/keyboards/cannonkeys/ortho48/keyboard.json index 2e045c183e..34f295fcd3 100644 --- a/keyboards/cannonkeys/ortho48/keyboard.json +++ b/keyboards/cannonkeys/ortho48/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ortho48", "manufacturer": "CannonKeys", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xCA04", diff --git a/keyboards/cannonkeys/ortho48v2/keyboard.json b/keyboards/cannonkeys/ortho48v2/keyboard.json index 4ead7db042..7861f33425 100644 --- a/keyboards/cannonkeys/ortho48v2/keyboard.json +++ b/keyboards/cannonkeys/ortho48v2/keyboard.json @@ -17,8 +17,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cannonkeys/ortho60/keyboard.json b/keyboards/cannonkeys/ortho60/keyboard.json index 2e8ad77297..874dc9efae 100644 --- a/keyboards/cannonkeys/ortho60/keyboard.json +++ b/keyboards/cannonkeys/ortho60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ortho60", "manufacturer": "CannonKeys", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xCA04", diff --git a/keyboards/cannonkeys/ortho60v2/keyboard.json b/keyboards/cannonkeys/ortho60v2/keyboard.json index 360c98bff9..99c15f1058 100644 --- a/keyboards/cannonkeys/ortho60v2/keyboard.json +++ b/keyboards/cannonkeys/ortho60v2/keyboard.json @@ -17,8 +17,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cannonkeys/ortho75/keyboard.json b/keyboards/cannonkeys/ortho75/keyboard.json index af09fd47a7..e46b255b79 100644 --- a/keyboards/cannonkeys/ortho75/keyboard.json +++ b/keyboards/cannonkeys/ortho75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ortho75", "manufacturer": "CannonKeys", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/cannonkeys/petrichor/keyboard.json b/keyboards/cannonkeys/petrichor/keyboard.json index ecec61e7cf..90f9886cdc 100644 --- a/keyboards/cannonkeys/petrichor/keyboard.json +++ b/keyboards/cannonkeys/petrichor/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cannonkeys/practice60/keyboard.json b/keyboards/cannonkeys/practice60/keyboard.json index ad8cde6d6b..9cd29cb2c5 100644 --- a/keyboards/cannonkeys/practice60/keyboard.json +++ b/keyboards/cannonkeys/practice60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Practice 60", "manufacturer": "CannonKeys", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xCA04", diff --git a/keyboards/cannonkeys/reverie/info.json b/keyboards/cannonkeys/reverie/info.json index 1e2a885781..418d0a6176 100644 --- a/keyboards/cannonkeys/reverie/info.json +++ b/keyboards/cannonkeys/reverie/info.json @@ -5,8 +5,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cannonkeys/ripple/keyboard.json b/keyboards/cannonkeys/ripple/keyboard.json index 3dc11719a1..e2f6c77645 100644 --- a/keyboards/cannonkeys/ripple/keyboard.json +++ b/keyboards/cannonkeys/ripple/keyboard.json @@ -15,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -36,8 +34,6 @@ "rgblight": { "led_count": 20, "hue_steps": 17, - "saturation_steps": 17, - "brightness_steps": 17, "animations": { "static_gradient": true, "twinkle": true, diff --git a/keyboards/cannonkeys/ripple_hs/keyboard.json b/keyboards/cannonkeys/ripple_hs/keyboard.json index 7892acc6c6..34ba5c8210 100644 --- a/keyboards/cannonkeys/ripple_hs/keyboard.json +++ b/keyboards/cannonkeys/ripple_hs/keyboard.json @@ -15,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cannonkeys/satisfaction75/config.h b/keyboards/cannonkeys/satisfaction75/config.h index 969206b19a..28bc6b286a 100644 --- a/keyboards/cannonkeys/satisfaction75/config.h +++ b/keyboards/cannonkeys/satisfaction75/config.h @@ -42,4 +42,7 @@ // 6 for 3x custom encoder settings, left, right, and press (18 bytes) #define VIA_EEPROM_CUSTOM_CONFIG_SIZE 20 - +// And if VIA isn't enabled, fall back to using standard QMK for configuration +#ifndef VIA_ENABLE +#define EECONFIG_KB_DATA_SIZE VIA_EEPROM_CUSTOM_CONFIG_SIZE +#endif diff --git a/keyboards/cannonkeys/satisfaction75/info.json b/keyboards/cannonkeys/satisfaction75/info.json index 96aeca80ee..69efb36a8c 100644 --- a/keyboards/cannonkeys/satisfaction75/info.json +++ b/keyboards/cannonkeys/satisfaction75/info.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/cannonkeys/satisfaction75_hs/config.h b/keyboards/cannonkeys/satisfaction75_hs/config.h index 658babd3c0..26c3e4080c 100644 --- a/keyboards/cannonkeys/satisfaction75_hs/config.h +++ b/keyboards/cannonkeys/satisfaction75_hs/config.h @@ -40,5 +40,10 @@ // 6 for 3x custom encoder settings, left, right, and press (18 bytes) #define VIA_EEPROM_CUSTOM_CONFIG_SIZE 20 +// And if VIA isn't enabled, fall back to using standard QMK for configuration +#ifndef VIA_ENABLE +#define EECONFIG_KB_DATA_SIZE VIA_EEPROM_CUSTOM_CONFIG_SIZE +#endif + // VIA lighting is handled by the keyboard-level code #define VIA_CUSTOM_LIGHTING_ENABLE diff --git a/keyboards/cannonkeys/satisfaction75_hs/keyboard.json b/keyboards/cannonkeys/satisfaction75_hs/keyboard.json index 48faa60362..55a03da463 100644 --- a/keyboards/cannonkeys/satisfaction75_hs/keyboard.json +++ b/keyboards/cannonkeys/satisfaction75_hs/keyboard.json @@ -11,7 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "encoder": true, "extrakey": true, diff --git a/keyboards/cannonkeys/savage65/keyboard.json b/keyboards/cannonkeys/savage65/keyboard.json index bc9c1d77e5..471b785633 100644 --- a/keyboards/cannonkeys/savage65/keyboard.json +++ b/keyboards/cannonkeys/savage65/keyboard.json @@ -1,63 +1,63 @@ { - "keyboard_name": "Savage65", "manufacturer": "CannonKeys", - "url": "https://cannonkeys.com", + "keyboard_name": "Savage65", "maintainer": "awkannan", - "usb": { - "vid": "0xCA04", - "pid": "0x5A65", - "device_version": "0.0.1" + "backlight": { + "breathing": true, + "levels": 6, + "pin": "A6" + }, + "bootloader": "stm32-dfu", + "diode_direction": "COL2ROW", + "features": { + "backlight": true, + "bootmagic": true, + "command": true, + "console": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgblight": true }, "matrix_pins": { "cols": ["A5", "B10", "A3", "A2", "B0", "A9", "C13", "B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15", "A14"], "rows": ["B12", "B11", "B14", "A8", "A1"] }, - "diode_direction": "COL2ROW", - "backlight": { - "pin": "A6", - "levels": 6, - "breathing": true + "processor": "STM32F072", + "qmk": { + "locking": { + "enabled": true, + "resync": true + } }, "rgblight": { - "led_count": 20, "animations": { + "alternating": true, "breathing": true, + "christmas": true, + "knight": true, "rainbow_mood": true, "rainbow_swirl": true, + "rgb_test": true, "snake": true, - "knight": true, - "christmas": true, "static_gradient": true, - "rgb_test": true, - "alternating": true, "twinkle": true - } - }, - "ws2812": { - "pin": "B15", - "driver": "spi" + }, + "led_count": 20 }, - "processor": "STM32F072", - "bootloader": "stm32-dfu", - "features": { - "bootmagic": true, - "mousekey": true, - "extrakey": true, - "console": true, - "command": true, - "nkro": true, - "backlight": true, - "rgblight": true + "url": "https://cannonkeys.com", + "usb": { + "device_version": "0.0.1", + "pid": "0x5A65", + "vid": "0xCA04" }, - "qmk": { - "locking": { - "enabled": true, - "resync": true - } + "ws2812": { + "driver": "spi", + "pin": "B15" }, - "community_layouts": ["65_ansi_blocker", "65_ansi_blocker_split_bs", "65_ansi_blocker_tsangan", "65_iso_blocker"], + "community_layouts": ["65_ansi_blocker", "65_ansi_blocker_split_bs", "65_ansi_blocker_tsangan", "65_ansi_blocker_tsangan_split_bs", "65_iso_blocker"], "layouts": { - "LAYOUT_default": { + "LAYOUT_65_ansi_blocker": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, @@ -72,10 +72,8 @@ {"matrix": [0, 10], "x": 10, "y": 0}, {"matrix": [0, 11], "x": 11, "y": 0}, {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0}, - {"matrix": [0, 14], "x": 14, "y": 0}, + {"matrix": [0, 13], "x": 13, "y": 0, "w": 2}, {"matrix": [0, 15], "x": 15, "y": 0}, - {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, {"matrix": [1, 1], "x": 1.5, "y": 1}, {"matrix": [1, 2], "x": 2.5, "y": 1}, @@ -91,7 +89,6 @@ {"matrix": [1, 12], "x": 12.5, "y": 1}, {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, {"matrix": [1, 15], "x": 15, "y": 1}, - {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, {"matrix": [2, 1], "x": 1.75, "y": 2}, {"matrix": [2, 2], "x": 2.75, "y": 2}, @@ -104,12 +101,9 @@ {"matrix": [2, 9], "x": 9.75, "y": 2}, {"matrix": [2, 10], "x": 10.75, "y": 2}, {"matrix": [2, 11], "x": 11.75, "y": 2}, - {"matrix": [2, 12], "x": 12.75, "y": 2}, - {"matrix": [2, 13], "x": 13.75, "y": 2, "w": 1.25}, + {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25}, {"matrix": [2, 15], "x": 15, "y": 2}, - - {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25}, - {"matrix": [3, 1], "x": 1.25, "y": 3}, + {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, {"matrix": [3, 2], "x": 2.25, "y": 3}, {"matrix": [3, 3], "x": 3.25, "y": 3}, {"matrix": [3, 4], "x": 4.25, "y": 3}, @@ -123,7 +117,6 @@ {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75}, {"matrix": [3, 13], "x": 14, "y": 3}, {"matrix": [3, 15], "x": 15, "y": 3}, - {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, @@ -135,7 +128,7 @@ {"matrix": [4, 15], "x": 15, "y": 4} ] }, - "LAYOUT_65_ansi_blocker": { + "LAYOUT_65_ansi_blocker_split_bs": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, @@ -150,9 +143,9 @@ {"matrix": [0, 10], "x": 10, "y": 0}, {"matrix": [0, 11], "x": 11, "y": 0}, {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0, "w": 2}, + {"matrix": [0, 13], "x": 13, "y": 0}, + {"matrix": [0, 14], "x": 14, "y": 0}, {"matrix": [0, 15], "x": 15, "y": 0}, - {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, {"matrix": [1, 1], "x": 1.5, "y": 1}, {"matrix": [1, 2], "x": 2.5, "y": 1}, @@ -168,7 +161,6 @@ {"matrix": [1, 12], "x": 12.5, "y": 1}, {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, {"matrix": [1, 15], "x": 15, "y": 1}, - {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, {"matrix": [2, 1], "x": 1.75, "y": 2}, {"matrix": [2, 2], "x": 2.75, "y": 2}, @@ -183,7 +175,6 @@ {"matrix": [2, 11], "x": 11.75, "y": 2}, {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25}, {"matrix": [2, 15], "x": 15, "y": 2}, - {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, {"matrix": [3, 2], "x": 2.25, "y": 3}, {"matrix": [3, 3], "x": 3.25, "y": 3}, @@ -198,7 +189,6 @@ {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75}, {"matrix": [3, 13], "x": 14, "y": 3}, {"matrix": [3, 15], "x": 15, "y": 3}, - {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, @@ -210,7 +200,7 @@ {"matrix": [4, 15], "x": 15, "y": 4} ] }, - "LAYOUT_65_ansi_blocker_split_bs": { + "LAYOUT_65_ansi_blocker_tsangan": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, @@ -225,10 +215,8 @@ {"matrix": [0, 10], "x": 10, "y": 0}, {"matrix": [0, 11], "x": 11, "y": 0}, {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0}, - {"matrix": [0, 14], "x": 14, "y": 0}, + {"matrix": [0, 13], "x": 13, "y": 0, "w": 2}, {"matrix": [0, 15], "x": 15, "y": 0}, - {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, {"matrix": [1, 1], "x": 1.5, "y": 1}, {"matrix": [1, 2], "x": 2.5, "y": 1}, @@ -244,7 +232,6 @@ {"matrix": [1, 12], "x": 12.5, "y": 1}, {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, {"matrix": [1, 15], "x": 15, "y": 1}, - {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, {"matrix": [2, 1], "x": 1.75, "y": 2}, {"matrix": [2, 2], "x": 2.75, "y": 2}, @@ -259,7 +246,6 @@ {"matrix": [2, 11], "x": 11.75, "y": 2}, {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25}, {"matrix": [2, 15], "x": 15, "y": 2}, - {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, {"matrix": [3, 2], "x": 2.25, "y": 3}, {"matrix": [3, 3], "x": 3.25, "y": 3}, @@ -274,19 +260,17 @@ {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75}, {"matrix": [3, 13], "x": 14, "y": 3}, {"matrix": [3, 15], "x": 15, "y": 3}, - - {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, - {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, - {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25}, - {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25}, + {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, + {"matrix": [4, 1], "x": 1.5, "y": 4}, + {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"matrix": [4, 6], "x": 4, "y": 4, "w": 7}, + {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5}, {"matrix": [4, 12], "x": 13, "y": 4}, {"matrix": [4, 13], "x": 14, "y": 4}, {"matrix": [4, 15], "x": 15, "y": 4} ] }, - "LAYOUT_65_ansi_blocker_tsangan": { + "LAYOUT_65_ansi_blocker_tsangan_split_bs": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, @@ -301,9 +285,9 @@ {"matrix": [0, 10], "x": 10, "y": 0}, {"matrix": [0, 11], "x": 11, "y": 0}, {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0, "w": 2}, + {"matrix": [0, 13], "x": 13, "y": 0}, + {"matrix": [0, 14], "x": 14, "y": 0}, {"matrix": [0, 15], "x": 15, "y": 0}, - {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, {"matrix": [1, 1], "x": 1.5, "y": 1}, {"matrix": [1, 2], "x": 2.5, "y": 1}, @@ -319,7 +303,6 @@ {"matrix": [1, 12], "x": 12.5, "y": 1}, {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, {"matrix": [1, 15], "x": 15, "y": 1}, - {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, {"matrix": [2, 1], "x": 1.75, "y": 2}, {"matrix": [2, 2], "x": 2.75, "y": 2}, @@ -334,7 +317,6 @@ {"matrix": [2, 11], "x": 11.75, "y": 2}, {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25}, {"matrix": [2, 15], "x": 15, "y": 2}, - {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, {"matrix": [3, 2], "x": 2.25, "y": 3}, {"matrix": [3, 3], "x": 3.25, "y": 3}, @@ -349,7 +331,6 @@ {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75}, {"matrix": [3, 13], "x": 14, "y": 3}, {"matrix": [3, 15], "x": 15, "y": 3}, - {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, {"matrix": [4, 1], "x": 1.5, "y": 4}, {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, @@ -377,7 +358,6 @@ {"matrix": [0, 12], "x": 12, "y": 0}, {"matrix": [0, 13], "x": 13, "y": 0, "w": 2}, {"matrix": [0, 15], "x": 15, "y": 0}, - {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, {"matrix": [1, 1], "x": 1.5, "y": 1}, {"matrix": [1, 2], "x": 2.5, "y": 1}, @@ -392,7 +372,6 @@ {"matrix": [1, 11], "x": 11.5, "y": 1}, {"matrix": [1, 12], "x": 12.5, "y": 1}, {"matrix": [1, 15], "x": 15, "y": 1}, - {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, {"matrix": [2, 1], "x": 1.75, "y": 2}, {"matrix": [2, 2], "x": 2.75, "y": 2}, @@ -408,7 +387,6 @@ {"matrix": [2, 12], "x": 12.75, "y": 2}, {"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2}, {"matrix": [2, 15], "x": 15, "y": 2}, - {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25}, {"matrix": [3, 1], "x": 1.25, "y": 3}, {"matrix": [3, 2], "x": 2.25, "y": 3}, @@ -424,7 +402,80 @@ {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75}, {"matrix": [3, 13], "x": 14, "y": 3}, {"matrix": [3, 15], "x": 15, "y": 3}, - + {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, + {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, + {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, + {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25}, + {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25}, + {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25}, + {"matrix": [4, 12], "x": 13, "y": 4}, + {"matrix": [4, 13], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4} + ] + }, + "LAYOUT_default": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 10], "x": 10, "y": 0}, + {"matrix": [0, 11], "x": 11, "y": 0}, + {"matrix": [0, 12], "x": 12, "y": 0}, + {"matrix": [0, 13], "x": 13, "y": 0}, + {"matrix": [0, 14], "x": 14, "y": 0}, + {"matrix": [0, 15], "x": 15, "y": 0}, + {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [1, 1], "x": 1.5, "y": 1}, + {"matrix": [1, 2], "x": 2.5, "y": 1}, + {"matrix": [1, 3], "x": 3.5, "y": 1}, + {"matrix": [1, 4], "x": 4.5, "y": 1}, + {"matrix": [1, 5], "x": 5.5, "y": 1}, + {"matrix": [1, 6], "x": 6.5, "y": 1}, + {"matrix": [1, 7], "x": 7.5, "y": 1}, + {"matrix": [1, 8], "x": 8.5, "y": 1}, + {"matrix": [1, 9], "x": 9.5, "y": 1}, + {"matrix": [1, 10], "x": 10.5, "y": 1}, + {"matrix": [1, 11], "x": 11.5, "y": 1}, + {"matrix": [1, 12], "x": 12.5, "y": 1}, + {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [1, 15], "x": 15, "y": 1}, + {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [2, 1], "x": 1.75, "y": 2}, + {"matrix": [2, 2], "x": 2.75, "y": 2}, + {"matrix": [2, 3], "x": 3.75, "y": 2}, + {"matrix": [2, 4], "x": 4.75, "y": 2}, + {"matrix": [2, 5], "x": 5.75, "y": 2}, + {"matrix": [2, 6], "x": 6.75, "y": 2}, + {"matrix": [2, 7], "x": 7.75, "y": 2}, + {"matrix": [2, 8], "x": 8.75, "y": 2}, + {"matrix": [2, 9], "x": 9.75, "y": 2}, + {"matrix": [2, 10], "x": 10.75, "y": 2}, + {"matrix": [2, 11], "x": 11.75, "y": 2}, + {"matrix": [2, 12], "x": 12.75, "y": 2}, + {"matrix": [2, 13], "x": 13.75, "y": 2, "w": 1.25}, + {"matrix": [2, 15], "x": 15, "y": 2}, + {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25}, + {"matrix": [3, 1], "x": 1.25, "y": 3}, + {"matrix": [3, 2], "x": 2.25, "y": 3}, + {"matrix": [3, 3], "x": 3.25, "y": 3}, + {"matrix": [3, 4], "x": 4.25, "y": 3}, + {"matrix": [3, 5], "x": 5.25, "y": 3}, + {"matrix": [3, 6], "x": 6.25, "y": 3}, + {"matrix": [3, 7], "x": 7.25, "y": 3}, + {"matrix": [3, 8], "x": 8.25, "y": 3}, + {"matrix": [3, 9], "x": 9.25, "y": 3}, + {"matrix": [3, 10], "x": 10.25, "y": 3}, + {"matrix": [3, 11], "x": 11.25, "y": 3}, + {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [3, 13], "x": 14, "y": 3}, + {"matrix": [3, 15], "x": 15, "y": 3}, {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, diff --git a/keyboards/cannonkeys/serenity/keyboard.json b/keyboards/cannonkeys/serenity/keyboard.json index 3259baaca9..83eed98abb 100644 --- a/keyboards/cannonkeys/serenity/keyboard.json +++ b/keyboards/cannonkeys/serenity/keyboard.json @@ -13,8 +13,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cannonkeys/typeb/keyboard.json b/keyboards/cannonkeys/typeb/keyboard.json index 1f16991205..fb3bf0964d 100644 --- a/keyboards/cannonkeys/typeb/keyboard.json +++ b/keyboards/cannonkeys/typeb/keyboard.json @@ -17,8 +17,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cannonkeys/vector/keyboard.json b/keyboards/cannonkeys/vector/keyboard.json index 46fc0b4578..117a83208f 100644 --- a/keyboards/cannonkeys/vector/keyboard.json +++ b/keyboards/cannonkeys/vector/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -21,7 +19,6 @@ "on_state": 0 }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "1.0.0", "vid": "0xCA04", diff --git a/keyboards/cannonkeys/vida/info.json b/keyboards/cannonkeys/vida/info.json index 8a5ddfe8bd..c8462b2ea9 100644 --- a/keyboards/cannonkeys/vida/info.json +++ b/keyboards/cannonkeys/vida/info.json @@ -5,8 +5,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cantor/keyboard.json b/keyboards/cantor/keyboard.json index 26b79c0280..9065e11ae5 100644 --- a/keyboards/cantor/keyboard.json +++ b/keyboards/cantor/keyboard.json @@ -4,8 +4,6 @@ "maintainer": "diepala", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/capsunlocked/cu24/keyboard.json b/keyboards/capsunlocked/cu24/keyboard.json index ceec64611c..2a8ccf19c0 100644 --- a/keyboards/capsunlocked/cu24/keyboard.json +++ b/keyboards/capsunlocked/cu24/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "CU24", "manufacturer": "Yiancar/CapsUnlocked", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/capsunlocked/cu65/keyboard.json b/keyboards/capsunlocked/cu65/keyboard.json index 80f1149661..444a5ae178 100644 --- a/keyboards/capsunlocked/cu65/keyboard.json +++ b/keyboards/capsunlocked/cu65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "CU65", "manufacturer": "CapsUnlocked", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4355", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/capsunlocked/cu7/keyboard.json b/keyboards/capsunlocked/cu7/keyboard.json index 46f8b34213..e19dc5acb3 100644 --- a/keyboards/capsunlocked/cu7/keyboard.json +++ b/keyboards/capsunlocked/cu7/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/capsunlocked/cu75/keyboard.json b/keyboards/capsunlocked/cu75/keyboard.json index f7a8356bcc..b226f74bf9 100644 --- a/keyboards/capsunlocked/cu75/keyboard.json +++ b/keyboards/capsunlocked/cu75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "CU75", "manufacturer": "LFKeyboards/CapsUnlocked", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/capsunlocked/cu80/v1/keyboard.json b/keyboards/capsunlocked/cu80/v1/keyboard.json index e3283d99cb..18fb97037b 100644 --- a/keyboards/capsunlocked/cu80/v1/keyboard.json +++ b/keyboards/capsunlocked/cu80/v1/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/carbo65/keyboard.json b/keyboards/carbo65/keyboard.json index f2a4ce0dac..918cbf465e 100644 --- a/keyboards/carbo65/keyboard.json +++ b/keyboards/carbo65/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/centromere/keyboard.json b/keyboards/centromere/keyboard.json index c190bd84d7..01dd6c9875 100644 --- a/keyboards/centromere/keyboard.json +++ b/keyboards/centromere/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Centromere", "manufacturer": "Southpaw Design", - "url": "", "maintainer": "spe2", "usb": { "vid": "0xFEED", diff --git a/keyboards/cest73/tkm/keyboard.json b/keyboards/cest73/tkm/keyboard.json index e9aad4461b..5fc85d0e75 100644 --- a/keyboards/cest73/tkm/keyboard.json +++ b/keyboards/cest73/tkm/keyboard.json @@ -12,8 +12,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/chalice/keyboard.json b/keyboards/chalice/keyboard.json index b8b4436966..3b9f1fa0b7 100644 --- a/keyboards/chalice/keyboard.json +++ b/keyboards/chalice/keyboard.json @@ -29,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/chaos65/keyboard.json b/keyboards/chaos65/keyboard.json index ed3f33e0c3..c2a3d4b1a5 100644 --- a/keyboards/chaos65/keyboard.json +++ b/keyboards/chaos65/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/charue/charon/keyboard.json b/keyboards/charue/charon/keyboard.json index 3dede57ba4..206474171b 100644 --- a/keyboards/charue/charon/keyboard.json +++ b/keyboards/charue/charon/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/charue/sunsetter_r2/keyboard.json b/keyboards/charue/sunsetter_r2/keyboard.json index b7b7cc8d92..6e2c1a92e1 100644 --- a/keyboards/charue/sunsetter_r2/keyboard.json +++ b/keyboards/charue/sunsetter_r2/keyboard.json @@ -28,8 +28,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/chavdai40/rev1/keyboard.json b/keyboards/chavdai40/rev1/keyboard.json index 22c4ccfb7b..350aa9de5f 100644 --- a/keyboards/chavdai40/rev1/keyboard.json +++ b/keyboards/chavdai40/rev1/keyboard.json @@ -6,8 +6,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/chavdai40/rev2/keyboard.json b/keyboards/chavdai40/rev2/keyboard.json index b43c68604f..9cf0e3693c 100644 --- a/keyboards/chavdai40/rev2/keyboard.json +++ b/keyboards/chavdai40/rev2/keyboard.json @@ -6,8 +6,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/checkerboards/axon40/keyboard.json b/keyboards/checkerboards/axon40/keyboard.json index c0b67b611d..a6647e9f3d 100644 --- a/keyboards/checkerboards/axon40/keyboard.json +++ b/keyboards/checkerboards/axon40/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Axon40", "manufacturer": "Nasp", - "url": "", "maintainer": "nasp", "usb": { "vid": "0x7070", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/checkerboards/candybar_ortho/keyboard.json b/keyboards/checkerboards/candybar_ortho/keyboard.json index d7908a04f4..e9735a0bca 100644 --- a/keyboards/checkerboards/candybar_ortho/keyboard.json +++ b/keyboards/checkerboards/candybar_ortho/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "CandyBar Ortho", "manufacturer": "Nasp", - "url": "", "maintainer": "nasp", "usb": { "vid": "0x7070", @@ -31,7 +30,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/checkerboards/g_idb60/keyboard.json b/keyboards/checkerboards/g_idb60/keyboard.json index 16f70dc868..1273341e19 100644 --- a/keyboards/checkerboards/g_idb60/keyboard.json +++ b/keyboards/checkerboards/g_idb60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "G_IDB60", "manufacturer": "Nasp", - "url": "", "maintainer": "npspears", "usb": { "vid": "0x7070", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/checkerboards/nop60/keyboard.json b/keyboards/checkerboards/nop60/keyboard.json index 9b86a3936a..d4648387f5 100644 --- a/keyboards/checkerboards/nop60/keyboard.json +++ b/keyboards/checkerboards/nop60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NOP60", "manufacturer": "Nasp", - "url": "", "maintainer": "nasp", "usb": { "vid": "0x7070", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/checkerboards/plexus75/keyboard.json b/keyboards/checkerboards/plexus75/keyboard.json index 14bd4deb75..4bab1ce986 100644 --- a/keyboards/checkerboards/plexus75/keyboard.json +++ b/keyboards/checkerboards/plexus75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Plexus75", "manufacturer": "Nasp", - "url": "", "maintainer": "npspears", "usb": { "vid": "0x7070", @@ -32,7 +31,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/checkerboards/plexus75_he/keyboard.json b/keyboards/checkerboards/plexus75_he/keyboard.json index 2da1bf34f3..55a7a49235 100644 --- a/keyboards/checkerboards/plexus75_he/keyboard.json +++ b/keyboards/checkerboards/plexus75_he/keyboard.json @@ -31,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/checkerboards/pursuit40/keyboard.json b/keyboards/checkerboards/pursuit40/keyboard.json index 996a55850d..3ef3e2f3ab 100644 --- a/keyboards/checkerboards/pursuit40/keyboard.json +++ b/keyboards/checkerboards/pursuit40/keyboard.json @@ -31,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/checkerboards/quark/keyboard.json b/keyboards/checkerboards/quark/keyboard.json index 4bb7c7fef7..90d378b528 100644 --- a/keyboards/checkerboards/quark/keyboard.json +++ b/keyboards/checkerboards/quark/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "QUARK", "manufacturer": "Nasp", - "url": "", "maintainer": "nasp", "usb": { "vid": "0x7070", diff --git a/keyboards/checkerboards/quark_lp/keyboard.json b/keyboards/checkerboards/quark_lp/keyboard.json index 59fda2efc8..7634a71d3e 100644 --- a/keyboards/checkerboards/quark_lp/keyboard.json +++ b/keyboards/checkerboards/quark_lp/keyboard.json @@ -40,8 +40,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/checkerboards/quark_plus/keyboard.json b/keyboards/checkerboards/quark_plus/keyboard.json index 311d21c219..6f38cbb752 100644 --- a/keyboards/checkerboards/quark_plus/keyboard.json +++ b/keyboards/checkerboards/quark_plus/keyboard.json @@ -32,8 +32,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/checkerboards/ud40_ortho_alt/keyboard.json b/keyboards/checkerboards/ud40_ortho_alt/keyboard.json index 2aae3d1cc8..7e18bd3708 100644 --- a/keyboards/checkerboards/ud40_ortho_alt/keyboard.json +++ b/keyboards/checkerboards/ud40_ortho_alt/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "UD40_Ortho_Alt", "manufacturer": "Nasp", - "url": "", "maintainer": "nasp", "usb": { "vid": "0x7070", @@ -31,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cherrybstudio/cb1800/keyboard.json b/keyboards/cherrybstudio/cb1800/keyboard.json index fedcc1c75e..384109b83d 100644 --- a/keyboards/cherrybstudio/cb1800/keyboard.json +++ b/keyboards/cherrybstudio/cb1800/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cherrybstudio/cb65/keyboard.json b/keyboards/cherrybstudio/cb65/keyboard.json index 8f14ec0941..f9facaa1aa 100644 --- a/keyboards/cherrybstudio/cb65/keyboard.json +++ b/keyboards/cherrybstudio/cb65/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cherrybstudio/cb87/keyboard.json b/keyboards/cherrybstudio/cb87/keyboard.json index 417c40e53d..2b7fba491e 100644 --- a/keyboards/cherrybstudio/cb87/keyboard.json +++ b/keyboards/cherrybstudio/cb87/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cherrybstudio/cb87rgb/keyboard.json b/keyboards/cherrybstudio/cb87rgb/keyboard.json index d2cc0c72de..1ce2fab78f 100644 --- a/keyboards/cherrybstudio/cb87rgb/keyboard.json +++ b/keyboards/cherrybstudio/cb87rgb/keyboard.json @@ -58,8 +58,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cherrybstudio/cb87v2/keyboard.json b/keyboards/cherrybstudio/cb87v2/keyboard.json index c40bb1778f..7337ed186b 100644 --- a/keyboards/cherrybstudio/cb87v2/keyboard.json +++ b/keyboards/cherrybstudio/cb87v2/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cheshire/curiosity/keyboard.json b/keyboards/cheshire/curiosity/keyboard.json index b408a5b6e9..d630072123 100644 --- a/keyboards/cheshire/curiosity/keyboard.json +++ b/keyboards/cheshire/curiosity/keyboard.json @@ -33,8 +33,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/chew/keyboard.json b/keyboards/chew/keyboard.json index 01175e6341..304f788af3 100644 --- a/keyboards/chew/keyboard.json +++ b/keyboards/chew/keyboard.json @@ -5,8 +5,6 @@ "bootloader": "rp2040", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/chickenman/ciel/keyboard.json b/keyboards/chickenman/ciel/keyboard.json index f28995794c..128e0d4b6d 100644 --- a/keyboards/chickenman/ciel/keyboard.json +++ b/keyboards/chickenman/ciel/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ciel", "manufacturer": "ChickenMan", - "url": "", "maintainer": "ramonimbao", "usb": { "vid": "0xC41C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/chickenman/ciel65/keyboard.json b/keyboards/chickenman/ciel65/keyboard.json index 8c316759a8..fb89fb936e 100644 --- a/keyboards/chickenman/ciel65/keyboard.json +++ b/keyboards/chickenman/ciel65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ciel65", "manufacturer": "ChickenMan", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xC41C", @@ -19,17 +18,13 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgblight": true }, "rgblight": { "led_count": 14, - "hue_steps": 8, "saturation_steps": 8, "brightness_steps": 8, - "max_brightness": 255, "sleep": true, "animations": { "alternating": true, diff --git a/keyboards/chill/ghoul/keyboard.json b/keyboards/chill/ghoul/keyboard.json index ff7435959c..321b7d19bd 100644 --- a/keyboards/chill/ghoul/keyboard.json +++ b/keyboards/chill/ghoul/keyboard.json @@ -12,8 +12,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/chlx/lfn_merro60/keyboard.json b/keyboards/chlx/lfn_merro60/keyboard.json index 54a235c7f8..6533e3d37f 100644 --- a/keyboards/chlx/lfn_merro60/keyboard.json +++ b/keyboards/chlx/lfn_merro60/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/chlx/merro60/keyboard.json b/keyboards/chlx/merro60/keyboard.json index 31f83f80a5..1a547a5230 100644 --- a/keyboards/chlx/merro60/keyboard.json +++ b/keyboards/chlx/merro60/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/chlx/piche60/keyboard.json b/keyboards/chlx/piche60/keyboard.json index 7eafe4f84f..462338e41c 100644 --- a/keyboards/chlx/piche60/keyboard.json +++ b/keyboards/chlx/piche60/keyboard.json @@ -9,8 +9,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/chlx/ppr_merro60/keyboard.json b/keyboards/chlx/ppr_merro60/keyboard.json index 9f056fef52..6ffd1614b6 100644 --- a/keyboards/chlx/ppr_merro60/keyboard.json +++ b/keyboards/chlx/ppr_merro60/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/chocofly/v1/keyboard.json b/keyboards/chocofly/v1/keyboard.json index 195d1e9a9f..ae2a710070 100644 --- a/keyboards/chocofly/v1/keyboard.json +++ b/keyboards/chocofly/v1/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": false, "mousekey": false, diff --git a/keyboards/chocv/keyboard.json b/keyboards/chocv/keyboard.json index 670e46f817..596b80973b 100644 --- a/keyboards/chocv/keyboard.json +++ b/keyboards/chocv/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/chord/zero/keyboard.json b/keyboards/chord/zero/keyboard.json index 63e74546d5..5b957a8e53 100644 --- a/keyboards/chord/zero/keyboard.json +++ b/keyboards/chord/zero/keyboard.json @@ -10,8 +10,6 @@ "maintainer": "sol", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/chosfox/cf81/keyboard.json b/keyboards/chosfox/cf81/keyboard.json index aae2421a03..9ff5e35fbd 100644 --- a/keyboards/chosfox/cf81/keyboard.json +++ b/keyboards/chosfox/cf81/keyboard.json @@ -22,8 +22,6 @@ "bootmagic": true, "mousekey": false, "extrakey": true, - "console": false, - "command": false, "nkro": true, "encoder": true, "rgb_matrix": true diff --git a/keyboards/chouchou/keyboard.json b/keyboards/chouchou/keyboard.json index 726f190aab..1d6236c2ea 100644 --- a/keyboards/chouchou/keyboard.json +++ b/keyboards/chouchou/keyboard.json @@ -5,8 +5,6 @@ "bootloader": "rp2040", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/chromatonemini/keyboard.json b/keyboards/chromatonemini/keyboard.json index 963496a0c0..454938ca0c 100644 --- a/keyboards/chromatonemini/keyboard.json +++ b/keyboards/chromatonemini/keyboard.json @@ -12,7 +12,6 @@ "extrakey": true, "encoder": true, "bootmagic": false, - "console": false, "mousekey": false, "nkro": false }, diff --git a/keyboards/churrosoft/deck8/info.json b/keyboards/churrosoft/deck8/info.json index 00fc2d1bad..d656997b78 100644 --- a/keyboards/churrosoft/deck8/info.json +++ b/keyboards/churrosoft/deck8/info.json @@ -12,7 +12,6 @@ }, "features": { "bootmagic": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cipulot/common/ec_board.c b/keyboards/cipulot/common/ec_board.c index 0ccb9f6d3c..b15543e49e 100644 --- a/keyboards/cipulot/common/ec_board.c +++ b/keyboards/cipulot/common/ec_board.c @@ -36,7 +36,7 @@ void eeconfig_init_kb(void) { } } // Write default value to EEPROM now - eeconfig_update_kb_datablock(&eeprom_ec_config); + eeconfig_update_kb_datablock(&eeprom_ec_config, 0, EECONFIG_KB_DATA_SIZE); eeconfig_init_user(); } @@ -44,7 +44,7 @@ void eeconfig_init_kb(void) { // On Keyboard startup void keyboard_post_init_kb(void) { // Read custom menu variables from memory - eeconfig_read_kb_datablock(&eeprom_ec_config); + eeconfig_read_kb_datablock(&eeprom_ec_config, 0, EECONFIG_KB_DATA_SIZE); // Set runtime values to EEPROM values ec_config.actuation_mode = eeprom_ec_config.actuation_mode; diff --git a/keyboards/cipulot/common/eeprom_tools.h b/keyboards/cipulot/common/eeprom_tools.h deleted file mode 100644 index b3c90d8759..0000000000 --- a/keyboards/cipulot/common/eeprom_tools.h +++ /dev/null @@ -1,26 +0,0 @@ -/* Copyright 2023 Cipulot - * - * 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 3 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/>. - */ -#pragma once - -#include "eeprom.h" - -#if (EECONFIG_KB_DATA_SIZE) > 0 -# define EEPROM_KB_PARTIAL_UPDATE(__struct, __field) eeprom_update_block(&(__struct.__field), (void *)((void *)(EECONFIG_KB_DATABLOCK) + offsetof(typeof(__struct), __field)), sizeof(__struct.__field)) -#endif - -#if (EECONFIG_USER_DATA_SIZE) > 0 -# define EEPROM_USER_PARTIAL_UPDATE(__struct, __field) eeprom_update_block(&(__struct.__field), (void *)((void *)(EECONFIG_USER_DATABLOCK) + offsetof(typeof(__struct), __field)), sizeof(__struct.__field)) -#endif diff --git a/keyboards/cipulot/common/via_ec.c b/keyboards/cipulot/common/via_ec.c index ed34a579b2..7be6edd026 100644 --- a/keyboards/cipulot/common/via_ec.c +++ b/keyboards/cipulot/common/via_ec.c @@ -13,7 +13,6 @@ * 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 "eeprom_tools.h" #include "ec_switch_matrix.h" #include "action.h" #include "print.h" @@ -73,7 +72,7 @@ void via_config_set_value(uint8_t *data) { uprintf("# Actuation Mode: Rapid Trigger #\n"); uprintf("#################################\n"); } - EEPROM_KB_PARTIAL_UPDATE(eeprom_ec_config, actuation_mode); + eeconfig_update_kb_datablock_field(eeprom_ec_config, actuation_mode); break; } case id_mode_0_actuation_threshold: { @@ -293,7 +292,7 @@ void ec_save_threshold_data(uint8_t option) { ec_rescale_values(3); ec_rescale_values(4); } - eeconfig_update_kb_datablock(&eeprom_ec_config); + eeconfig_update_kb_datablock(&eeprom_ec_config, 0, EECONFIG_KB_DATA_SIZE); uprintf("####################################\n"); uprintf("# New thresholds applied and saved #\n"); uprintf("####################################\n"); @@ -321,7 +320,7 @@ void ec_save_bottoming_reading(void) { ec_rescale_values(2); ec_rescale_values(3); ec_rescale_values(4); - eeconfig_update_kb_datablock(&eeprom_ec_config); + eeconfig_update_kb_datablock(&eeprom_ec_config, 0, EECONFIG_KB_DATA_SIZE); } // Show the calibration data diff --git a/keyboards/cipulot/ec_980c/ec_980c.c b/keyboards/cipulot/ec_980c/ec_980c.c index eaa636ede6..7a2062a4e4 100644 --- a/keyboards/cipulot/ec_980c/ec_980c.c +++ b/keyboards/cipulot/ec_980c/ec_980c.c @@ -44,7 +44,7 @@ void eeconfig_init_kb(void) { } } // Write default value to EEPROM now - eeconfig_update_kb_datablock(&eeprom_ec_config); + eeconfig_update_kb_datablock(&eeprom_ec_config, 0, EECONFIG_KB_DATA_SIZE); eeconfig_init_user(); } @@ -52,7 +52,7 @@ void eeconfig_init_kb(void) { // On Keyboard startup void keyboard_post_init_kb(void) { // Read custom menu variables from memory - eeconfig_read_kb_datablock(&eeprom_ec_config); + eeconfig_read_kb_datablock(&eeprom_ec_config, 0, EECONFIG_KB_DATA_SIZE); // Set runtime values to EEPROM values ec_config.actuation_mode = eeprom_ec_config.actuation_mode; diff --git a/keyboards/cipulot/ec_980c/keyboard.json b/keyboards/cipulot/ec_980c/keyboard.json index 9be58d294c..823a761735 100644 --- a/keyboards/cipulot/ec_980c/keyboard.json +++ b/keyboards/cipulot/ec_980c/keyboard.json @@ -38,8 +38,7 @@ {"matrix": [0, 16], "x": 17, "y": 1, "flags": 4}, {"matrix": [0, 17], "x": 18, "y": 1, "flags": 4} ], - "led_count": 3, - "max_brightness": 255 + "led_count": 3 }, "usb": { "device_version": "0.0.1", diff --git a/keyboards/cipulot/ec_typek/ec_typek.c b/keyboards/cipulot/ec_typek/ec_typek.c index d4241f66f1..31616afc02 100644 --- a/keyboards/cipulot/ec_typek/ec_typek.c +++ b/keyboards/cipulot/ec_typek/ec_typek.c @@ -44,7 +44,7 @@ void eeconfig_init_kb(void) { } } // Write default value to EEPROM now - eeconfig_update_kb_datablock(&eeprom_ec_config); + eeconfig_update_kb_datablock(&eeprom_ec_config, 0, EECONFIG_KB_DATA_SIZE); eeconfig_init_user(); } @@ -52,7 +52,7 @@ void eeconfig_init_kb(void) { // On Keyboard startup void keyboard_post_init_kb(void) { // Read custom menu variables from memory - eeconfig_read_kb_datablock(&eeprom_ec_config); + eeconfig_read_kb_datablock(&eeprom_ec_config, 0, EECONFIG_KB_DATA_SIZE); // Set runtime values to EEPROM values ec_config.actuation_mode = eeprom_ec_config.actuation_mode; diff --git a/keyboards/cipulot/kallos/keyboard.json b/keyboards/cipulot/kallos/keyboard.json index 731b37fda9..ef10f34266 100644 --- a/keyboards/cipulot/kallos/keyboard.json +++ b/keyboards/cipulot/kallos/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Kallos", "manufacturer": "Cipulot", - "url": "", "maintainer": "Cipulot", "usb": { "vid": "0x6369", @@ -31,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/ck60i/keyboard.json b/keyboards/ck60i/keyboard.json index 72b57598a4..d628275c48 100644 --- a/keyboards/ck60i/keyboard.json +++ b/keyboards/ck60i/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "CK60i", "manufacturer": "CandyKeys", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x434B", @@ -11,7 +10,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/ckeys/handwire_101/keyboard.json b/keyboards/ckeys/handwire_101/keyboard.json index 642d0d8a25..781cd25c83 100644 --- a/keyboards/ckeys/handwire_101/keyboard.json +++ b/keyboards/ckeys/handwire_101/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ckeys/nakey/keyboard.json b/keyboards/ckeys/nakey/keyboard.json index 85f744217f..e9cbced1f1 100644 --- a/keyboards/ckeys/nakey/keyboard.json +++ b/keyboards/ckeys/nakey/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "naKey", "manufacturer": "cKeys", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/ckeys/obelus/keyboard.json b/keyboards/ckeys/obelus/keyboard.json index 797bb870b9..d0929647dc 100644 --- a/keyboards/ckeys/obelus/keyboard.json +++ b/keyboards/ckeys/obelus/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Obelus", "manufacturer": "cKeys", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "audio": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "midi": true, "mousekey": false, diff --git a/keyboards/ckeys/thedora/keyboard.json b/keyboards/ckeys/thedora/keyboard.json index d287e81a0b..d1e3ffd4da 100644 --- a/keyboards/ckeys/thedora/keyboard.json +++ b/keyboards/ckeys/thedora/keyboard.json @@ -11,8 +11,6 @@ "features": { "audio": true, "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "midi": true, diff --git a/keyboards/ckeys/washington/keyboard.json b/keyboards/ckeys/washington/keyboard.json index b410e16f93..76e6322ccb 100644 --- a/keyboards/ckeys/washington/keyboard.json +++ b/keyboards/ckeys/washington/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/clap_studio/flame60/keyboard.json b/keyboards/clap_studio/flame60/keyboard.json index 7f6b9014ae..8ceaa45990 100644 --- a/keyboards/clap_studio/flame60/keyboard.json +++ b/keyboards/clap_studio/flame60/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/clawsome/bookerboard/keyboard.json b/keyboards/clawsome/bookerboard/keyboard.json index a72260eb60..7e3065863a 100644 --- a/keyboards/clawsome/bookerboard/keyboard.json +++ b/keyboards/clawsome/bookerboard/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Bookerboard", "manufacturer": "AlisGraveNil", - "url": "", "maintainer": "AlisGraveNil", "usb": { "vid": "0xFEED", diff --git a/keyboards/clawsome/fightpad/keyboard.json b/keyboards/clawsome/fightpad/keyboard.json index 7333349028..ac5f83af23 100644 --- a/keyboards/clawsome/fightpad/keyboard.json +++ b/keyboards/clawsome/fightpad/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/clawsome/sidekick/keyboard.json b/keyboards/clawsome/sidekick/keyboard.json index 4f535d09aa..f2712a367d 100644 --- a/keyboards/clawsome/sidekick/keyboard.json +++ b/keyboards/clawsome/sidekick/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Sidekick", "manufacturer": "AlisGraveNil", - "url": "", "maintainer": "AlisGraveNil", "usb": { "vid": "0xFEED", diff --git a/keyboards/clueboard/17/keyboard.json b/keyboards/clueboard/17/keyboard.json index d6aec9cfcc..7b900cafd0 100644 --- a/keyboards/clueboard/17/keyboard.json +++ b/keyboards/clueboard/17/keyboard.json @@ -8,7 +8,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": true, @@ -32,15 +31,12 @@ "static_gradient": true, "twinkle": true }, - "brightness_steps": 17, "hue_steps": 10, - "led_count": 4, - "saturation_steps": 17 + "led_count": 4 }, "ws2812": { "pin": "F6" }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x2312", diff --git a/keyboards/clueboard/2x1800/2018/keyboard.json b/keyboards/clueboard/2x1800/2018/keyboard.json index 1a926c62b9..cf827de11e 100644 --- a/keyboards/clueboard/2x1800/2018/keyboard.json +++ b/keyboards/clueboard/2x1800/2018/keyboard.json @@ -8,7 +8,6 @@ "features": { "audio": true, "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": true, @@ -44,7 +43,6 @@ "twinkle": true }, "brightness_steps": 8, - "hue_steps": 8, "led_count": 16, "saturation_steps": 8 }, diff --git a/keyboards/clueboard/60/keyboard.json b/keyboards/clueboard/60/keyboard.json index d0b4d34999..4187f5ede4 100644 --- a/keyboards/clueboard/60/keyboard.json +++ b/keyboards/clueboard/60/keyboard.json @@ -10,7 +10,6 @@ "features": { "audio": true, "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/clueboard/66/rev1/keyboard.json b/keyboards/clueboard/66/rev1/keyboard.json index ca1e3a6553..3675f7170f 100644 --- a/keyboards/clueboard/66/rev1/keyboard.json +++ b/keyboards/clueboard/66/rev1/keyboard.json @@ -7,7 +7,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": true, @@ -33,10 +32,8 @@ "static_gradient": true, "twinkle": true }, - "brightness_steps": 17, "hue_steps": 10, - "led_count": 14, - "saturation_steps": 17 + "led_count": 14 }, "ws2812": { "pin": "B2" diff --git a/keyboards/clueboard/66/rev2/keyboard.json b/keyboards/clueboard/66/rev2/keyboard.json index fea4f8d39b..4681056ece 100644 --- a/keyboards/clueboard/66/rev2/keyboard.json +++ b/keyboards/clueboard/66/rev2/keyboard.json @@ -7,7 +7,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": true, @@ -34,10 +33,8 @@ "static_gradient": true, "twinkle": true }, - "brightness_steps": 17, "hue_steps": 32, - "led_count": 14, - "saturation_steps": 17 + "led_count": 14 }, "ws2812": { "pin": "D7" diff --git a/keyboards/clueboard/66/rev3/keyboard.json b/keyboards/clueboard/66/rev3/keyboard.json index 4553979d8a..03a7608876 100644 --- a/keyboards/clueboard/66/rev3/keyboard.json +++ b/keyboards/clueboard/66/rev3/keyboard.json @@ -8,8 +8,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -34,10 +32,8 @@ "static_gradient": true, "twinkle": true }, - "brightness_steps": 17, "hue_steps": 32, - "led_count": 18, - "saturation_steps": 17 + "led_count": 18 }, "ws2812": { "pin": "D7" diff --git a/keyboards/clueboard/66/rev4/keyboard.json b/keyboards/clueboard/66/rev4/keyboard.json index dbc1b94915..c854cfff99 100644 --- a/keyboards/clueboard/66/rev4/keyboard.json +++ b/keyboards/clueboard/66/rev4/keyboard.json @@ -9,7 +9,6 @@ "features": { "audio": true, "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": true, @@ -32,10 +31,8 @@ "static_gradient": true, "twinkle": true }, - "brightness_steps": 17, "hue_steps": 32, - "led_count": 18, - "saturation_steps": 17 + "led_count": 18 }, "ws2812": { "pin": "D7" diff --git a/keyboards/clueboard/66_hotswap/prototype/keyboard.json b/keyboards/clueboard/66_hotswap/prototype/keyboard.json index 9d0b0dd27c..17dd296d4f 100644 --- a/keyboards/clueboard/66_hotswap/prototype/keyboard.json +++ b/keyboards/clueboard/66_hotswap/prototype/keyboard.json @@ -9,7 +9,6 @@ "audio": true, "backlight": true, "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": false, @@ -39,10 +38,8 @@ "static_gradient": true, "twinkle": true }, - "brightness_steps": 17, "hue_steps": 32, - "led_count": 26, - "saturation_steps": 17 + "led_count": 26 }, "ws2812": { "pin": "D7" diff --git a/keyboards/clueboard/california/keyboard.json b/keyboards/clueboard/california/keyboard.json index 66b4b484e2..15467d4deb 100644 --- a/keyboards/clueboard/california/keyboard.json +++ b/keyboards/clueboard/california/keyboard.json @@ -1,6 +1,5 @@ { "keyboard_name": "Clueboard California", - "url": "", "maintainer": "skullydazed", "processor": "STM32F303", "board": "QMK_PROTON_C", diff --git a/keyboards/clueboard/card/keyboard.json b/keyboards/clueboard/card/keyboard.json index 0425819ed7..b5d5122c3d 100644 --- a/keyboards/clueboard/card/keyboard.json +++ b/keyboards/clueboard/card/keyboard.json @@ -10,7 +10,6 @@ "audio": true, "backlight": true, "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": true, @@ -25,10 +24,8 @@ "rows": ["F0", "F5", "F4", "B4"] }, "rgblight": { - "brightness_steps": 17, "hue_steps": 10, - "led_count": 4, - "saturation_steps": 17 + "led_count": 4 }, "ws2812": { "pin": "E6" diff --git a/keyboards/cmm_studio/fuji65/keyboard.json b/keyboards/cmm_studio/fuji65/keyboard.json index c4f1e5156e..55ff233335 100644 --- a/keyboards/cmm_studio/fuji65/keyboard.json +++ b/keyboards/cmm_studio/fuji65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Fuji65", "manufacturer": "CMM.Studio", - "url": "", "maintainer": "CMMS-Freather", "usb": { "vid": "0x434D", @@ -30,7 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/cmm_studio/saka68/hotswap/keyboard.json b/keyboards/cmm_studio/saka68/hotswap/keyboard.json index 6dc3ec639a..8ea3185bf7 100644 --- a/keyboards/cmm_studio/saka68/hotswap/keyboard.json +++ b/keyboards/cmm_studio/saka68/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Saka68 Hotswap", "manufacturer": "CMM.Studio", - "url": "", "maintainer": "CMMS-Freather", "usb": { "vid": "0x434D", diff --git a/keyboards/cmm_studio/saka68/solder/keyboard.json b/keyboards/cmm_studio/saka68/solder/keyboard.json index d5aea40763..977162e6a4 100644 --- a/keyboards/cmm_studio/saka68/solder/keyboard.json +++ b/keyboards/cmm_studio/saka68/solder/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Saka68 Solder", "manufacturer": "CMM.Studio", - "url": "", "maintainer": "CMMS-Freather", "usb": { "vid": "0x434D", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/coarse/ixora/keyboard.json b/keyboards/coarse/ixora/keyboard.json index 33ba2270ac..ebcc345d52 100644 --- a/keyboards/coarse/ixora/keyboard.json +++ b/keyboards/coarse/ixora/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ixora Rev1", "manufacturer": "PeiorisBoards", - "url": "", "maintainer": "Peioris", "usb": { "vid": "0xFEED", diff --git a/keyboards/coarse/vinta/keyboard.json b/keyboards/coarse/vinta/keyboard.json index df9aa7e5a1..07d5edb29b 100644 --- a/keyboards/coarse/vinta/keyboard.json +++ b/keyboards/coarse/vinta/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Vinta R1", "manufacturer": "PeiorisBoards", - "url": "", "maintainer": "Peioris", "usb": { "vid": "0xFEED", diff --git a/keyboards/coban/pad3a/keyboard.json b/keyboards/coban/pad3a/keyboard.json index a9a78b8220..b2a9c32b77 100644 --- a/keyboards/coban/pad3a/keyboard.json +++ b/keyboards/coban/pad3a/keyboard.json @@ -16,8 +16,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/compound/keyboard.json b/keyboards/compound/keyboard.json index a0a1e1e949..d30389da84 100644 --- a/keyboards/compound/keyboard.json +++ b/keyboards/compound/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/concreteflowers/cor/keyboard.json b/keyboards/concreteflowers/cor/keyboard.json index c2fa4379df..ff7f9d1777 100644 --- a/keyboards/concreteflowers/cor/keyboard.json +++ b/keyboards/concreteflowers/cor/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false @@ -17,7 +15,6 @@ "cols": ["F5", "F6", "F7", "C6", "C7", "B1", "B7", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "vid": "0x5001", diff --git a/keyboards/concreteflowers/cor_tkl/keyboard.json b/keyboards/concreteflowers/cor_tkl/keyboard.json index 6a797d644c..d5a293eaa3 100644 --- a/keyboards/concreteflowers/cor_tkl/keyboard.json +++ b/keyboards/concreteflowers/cor_tkl/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Cor TKL", "manufacturer": "concreteflowers", - "url": "", "maintainer": "ramonimbao", "community_layouts": [ "tkl_f13_ansi", @@ -17,8 +16,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": false, "rgb_matrix": true }, diff --git a/keyboards/contender/keyboard.json b/keyboards/contender/keyboard.json index 2e5ef84412..ef0812ae19 100644 --- a/keyboards/contender/keyboard.json +++ b/keyboards/contender/keyboard.json @@ -31,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/contra/keyboard.json b/keyboards/contra/keyboard.json index ffa32d6555..b3179564fe 100644 --- a/keyboards/contra/keyboard.json +++ b/keyboards/contra/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Contra", "manufacturer": "Cartel", - "url": "", "maintainer": "qmk", "features": { "bootmagic": true, diff --git a/keyboards/contra/keymaps/default/keymap.c b/keyboards/contra/keymaps/default/keymap.c index 415e22e81a..645005769a 100644 --- a/keyboards/contra/keymaps/default/keymap.c +++ b/keyboards/contra/keymaps/default/keymap.c @@ -222,9 +222,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (!eeconfig_is_enabled()) { eeconfig_init(); } - keymap_config.raw = eeconfig_read_keymap(); + eeconfig_read_keymap(&keymap_config); keymap_config.nkro = 1; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } return false; break; diff --git a/keyboards/controllerworks/city42/keyboard.json b/keyboards/controllerworks/city42/keyboard.json index 6657a7485b..1343229f77 100644 --- a/keyboards/controllerworks/city42/keyboard.json +++ b/keyboards/controllerworks/city42/keyboard.json @@ -9,8 +9,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/controllerworks/mini36/keyboard.json b/keyboards/controllerworks/mini36/keyboard.json index 8039025a28..64327709a3 100644 --- a/keyboards/controllerworks/mini36/keyboard.json +++ b/keyboards/controllerworks/mini36/keyboard.json @@ -54,8 +54,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/controllerworks/mini42/keyboard.json b/keyboards/controllerworks/mini42/keyboard.json index ceb7f8ce1f..f917cdd990 100644 --- a/keyboards/controllerworks/mini42/keyboard.json +++ b/keyboards/controllerworks/mini42/keyboard.json @@ -54,8 +54,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/converter/a1200/miss1200/keyboard.json b/keyboards/converter/a1200/miss1200/keyboard.json index 1f7bfcda3f..5f090449a9 100644 --- a/keyboards/converter/a1200/miss1200/keyboard.json +++ b/keyboards/converter/a1200/miss1200/keyboard.json @@ -8,8 +8,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/converter/a1200/mistress1200/keyboard.json b/keyboards/converter/a1200/mistress1200/keyboard.json index c2cf110b2a..73c0846ea8 100644 --- a/keyboards/converter/a1200/mistress1200/keyboard.json +++ b/keyboards/converter/a1200/mistress1200/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "grave_esc": false, "magic": false, diff --git a/keyboards/converter/a1200/teensy2pp/keyboard.json b/keyboards/converter/a1200/teensy2pp/keyboard.json index 0766123913..f5922cf3e2 100644 --- a/keyboards/converter/a1200/teensy2pp/keyboard.json +++ b/keyboards/converter/a1200/teensy2pp/keyboard.json @@ -8,8 +8,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/converter/adb_usb/info.json b/keyboards/converter/adb_usb/info.json index 3fbe2c0c74..3452efd709 100644 --- a/keyboards/converter/adb_usb/info.json +++ b/keyboards/converter/adb_usb/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "ADB to USB Keyboard Converter", "manufacturer": "QMK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/converter/ibm_terminal/keyboard.json b/keyboards/converter/ibm_terminal/keyboard.json index b95ea58d20..d37bb2b147 100644 --- a/keyboards/converter/ibm_terminal/keyboard.json +++ b/keyboards/converter/ibm_terminal/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "IBM Terminal to USB Keyboard Converter", "manufacturer": "QMK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/converter/m0110_usb/keyboard.json b/keyboards/converter/m0110_usb/keyboard.json index 11b83bbb18..c4803b6e88 100644 --- a/keyboards/converter/m0110_usb/keyboard.json +++ b/keyboards/converter/m0110_usb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Apple M0110(A) to USB Keyboard Converter", "manufacturer": "QMK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/converter/numeric_keypad_iie/keyboard.json b/keyboards/converter/numeric_keypad_iie/keyboard.json index 6dcffe7e21..6d64654846 100644 --- a/keyboards/converter/numeric_keypad_iie/keyboard.json +++ b/keyboards/converter/numeric_keypad_iie/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Numeric Keypad IIe", "manufacturer": "Apple Inc.", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/converter/palm_usb/stowaway/keyboard.json b/keyboards/converter/palm_usb/stowaway/keyboard.json index c93957b7d8..6488b5c23c 100644 --- a/keyboards/converter/palm_usb/stowaway/keyboard.json +++ b/keyboards/converter/palm_usb/stowaway/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Stowaway Converter", "manufacturer": "QMK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/converter/siemens_tastatur/keyboard.json b/keyboards/converter/siemens_tastatur/keyboard.json index 710a2902cb..8f9f31bef1 100644 --- a/keyboards/converter/siemens_tastatur/keyboard.json +++ b/keyboards/converter/siemens_tastatur/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Siemens Tastatur", "manufacturer": "Yiancar-Designs", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x8968", diff --git a/keyboards/converter/sun_usb/info.json b/keyboards/converter/sun_usb/info.json index e4031595ad..57c38520ff 100644 --- a/keyboards/converter/sun_usb/info.json +++ b/keyboards/converter/sun_usb/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Sun Keyboard Converter", "manufacturer": "QMK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/converter/usb_usb/info.json b/keyboards/converter/usb_usb/info.json index 747fd49782..97d048160f 100644 --- a/keyboards/converter/usb_usb/info.json +++ b/keyboards/converter/usb_usb/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "USB to USB Converter", "manufacturer": "QMK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/converter/xt_usb/keyboard.json b/keyboards/converter/xt_usb/keyboard.json index 649b283329..08e697b8e9 100644 --- a/keyboards/converter/xt_usb/keyboard.json +++ b/keyboards/converter/xt_usb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "IBM PC XT Keyboard Converter", "manufacturer": "QMK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/cool836a/keyboard.json b/keyboards/cool836a/keyboard.json index 3d32f45c9d..0095f8c73f 100644 --- a/keyboards/cool836a/keyboard.json +++ b/keyboards/cool836a/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/copenhagen_click/click_pad_v1/keyboard.json b/keyboards/copenhagen_click/click_pad_v1/keyboard.json index d84630cfbc..5897b1e114 100755 --- a/keyboards/copenhagen_click/click_pad_v1/keyboard.json +++ b/keyboards/copenhagen_click/click_pad_v1/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/coseyfannitutti/discipad/keyboard.json b/keyboards/coseyfannitutti/discipad/keyboard.json index 5c491876e4..0c9cf4498f 100644 --- a/keyboards/coseyfannitutti/discipad/keyboard.json +++ b/keyboards/coseyfannitutti/discipad/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/coseyfannitutti/romeo/keyboard.json b/keyboards/coseyfannitutti/romeo/keyboard.json index 260589889a..97a3610a48 100644 --- a/keyboards/coseyfannitutti/romeo/keyboard.json +++ b/keyboards/coseyfannitutti/romeo/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/cosmo65/keyboard.json b/keyboards/cosmo65/keyboard.json index 1814b3f0d0..690170b1d1 100644 --- a/keyboards/cosmo65/keyboard.json +++ b/keyboards/cosmo65/keyboard.json @@ -28,7 +28,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cozykeys/bloomer/v2/keyboard.json b/keyboards/cozykeys/bloomer/v2/keyboard.json index 9f09db86fa..d1714b7ef1 100644 --- a/keyboards/cozykeys/bloomer/v2/keyboard.json +++ b/keyboards/cozykeys/bloomer/v2/keyboard.json @@ -4,8 +4,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/cozykeys/bloomer/v3/keyboard.json b/keyboards/cozykeys/bloomer/v3/keyboard.json index a0f04956af..d598b84f0d 100644 --- a/keyboards/cozykeys/bloomer/v3/keyboard.json +++ b/keyboards/cozykeys/bloomer/v3/keyboard.json @@ -4,8 +4,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/cozykeys/speedo/v2/keyboard.json b/keyboards/cozykeys/speedo/v2/keyboard.json index 69dd33d6b6..b361006005 100644 --- a/keyboards/cozykeys/speedo/v2/keyboard.json +++ b/keyboards/cozykeys/speedo/v2/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/cradio/keyboard.json b/keyboards/cradio/keyboard.json index 433c6e96e9..2074295b36 100644 --- a/keyboards/cradio/keyboard.json +++ b/keyboards/cradio/keyboard.json @@ -13,8 +13,6 @@ "pin_compatible": "promicro", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/crawlpad/keyboard.json b/keyboards/crawlpad/keyboard.json index d4f1c43971..02791ab583 100644 --- a/keyboards/crawlpad/keyboard.json +++ b/keyboards/crawlpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Crawlpad", "manufacturer": "WoodKeys.Click", - "url": "", "maintainer": "colemarkham", "usb": { "vid": "0xFEED", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/crazy_keyboard_68/keyboard.json b/keyboards/crazy_keyboard_68/keyboard.json index a53013bfb9..b58d7eb342 100644 --- a/keyboards/crazy_keyboard_68/keyboard.json +++ b/keyboards/crazy_keyboard_68/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Crazy_Keyboard 68", "manufacturer": "chent7", - "url": "", "maintainer": "chent7", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/crbn/keyboard.json b/keyboards/crbn/keyboard.json index 9febd33ed6..a2666c6c52 100644 --- a/keyboards/crbn/keyboard.json +++ b/keyboards/crbn/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/creatkeebs/glacier/keyboard.json b/keyboards/creatkeebs/glacier/keyboard.json index 61e6bd9136..ccda609975 100644 --- a/keyboards/creatkeebs/glacier/keyboard.json +++ b/keyboards/creatkeebs/glacier/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "glacier", "manufacturer": "creatkeebs", - "url": "", "maintainer": "Timliuzhaolu", "usb": { "vid": "0x0410", @@ -11,7 +10,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/creatkeebs/thera/keyboard.json b/keyboards/creatkeebs/thera/keyboard.json index ab10fda324..f9d40e5f1f 100644 --- a/keyboards/creatkeebs/thera/keyboard.json +++ b/keyboards/creatkeebs/thera/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/crimsonkeyboards/resume1800/keyboard.json b/keyboards/crimsonkeyboards/resume1800/keyboard.json index aa54b04801..9b68049c6d 100644 --- a/keyboards/crimsonkeyboards/resume1800/keyboard.json +++ b/keyboards/crimsonkeyboards/resume1800/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Resume1800", "manufacturer": "CrimsonKeyboards", - "url": "", "maintainer": "CrimsonKeyboards", "usb": { "vid": "0xFEED", diff --git a/keyboards/crowboard/keyboard.json b/keyboards/crowboard/keyboard.json index 1a9502cbd1..2686a3d99c 100644 --- a/keyboards/crowboard/keyboard.json +++ b/keyboards/crowboard/keyboard.json @@ -15,7 +15,6 @@ "rows": ["GP14", "GP15", "GP16", "GP17"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0000", diff --git a/keyboards/custommk/ergostrafer/keyboard.json b/keyboards/custommk/ergostrafer/keyboard.json index 4f23417415..926190d952 100644 --- a/keyboards/custommk/ergostrafer/keyboard.json +++ b/keyboards/custommk/ergostrafer/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/custommk/evo70/keyboard.json b/keyboards/custommk/evo70/keyboard.json index 95464e691a..14a328e442 100644 --- a/keyboards/custommk/evo70/keyboard.json +++ b/keyboards/custommk/evo70/keyboard.json @@ -8,8 +8,6 @@ "bootmagic": true, "mousekey": false, "extrakey": true, - "console": false, - "command": false, "nkro": true, "backlight": true, "rgblight": true, diff --git a/keyboards/custommk/evo70_r2/keyboard.json b/keyboards/custommk/evo70_r2/keyboard.json index 5f10d6705d..8f986c92ac 100644 --- a/keyboards/custommk/evo70_r2/keyboard.json +++ b/keyboards/custommk/evo70_r2/keyboard.json @@ -6,8 +6,6 @@ "tags": ["70%", "encoder", "underglow", "backlight"], "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -61,7 +59,6 @@ "backlight": { "driver": "pwm", "breathing": true, - "breathing_period": 6, "levels": 17, "pin": "A6" }, diff --git a/keyboards/cutie_club/borsdorf/keyboard.json b/keyboards/cutie_club/borsdorf/keyboard.json index 30b5a74d64..02c3c12dff 100644 --- a/keyboards/cutie_club/borsdorf/keyboard.json +++ b/keyboards/cutie_club/borsdorf/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Borsdorf", "manufacturer": "Cutie Club", - "url": "", "maintainer": "Cutie Club", "usb": { "vid": "0xFB9C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/cutie_club/fidelity/keyboard.json b/keyboards/cutie_club/fidelity/keyboard.json index 905460d64e..142f303f46 100644 --- a/keyboards/cutie_club/fidelity/keyboard.json +++ b/keyboards/cutie_club/fidelity/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true }, @@ -25,7 +23,6 @@ "resync": true } }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x4D1B", diff --git a/keyboards/cutie_club/giant_macro_pad/keyboard.json b/keyboards/cutie_club/giant_macro_pad/keyboard.json index f5cde334c0..ee9a42bf7c 100644 --- a/keyboards/cutie_club/giant_macro_pad/keyboard.json +++ b/keyboards/cutie_club/giant_macro_pad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Cupar19 Giant Macro Pad", "manufacturer": "Cutie Club", - "url": "", "maintainer": "cutie-club", "usb": { "vid": "0xFB9C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/cutie_club/keebcats/denis/keyboard.json b/keyboards/cutie_club/keebcats/denis/keyboard.json index 098ae39cd2..e5ec7faa7f 100644 --- a/keyboards/cutie_club/keebcats/denis/keyboard.json +++ b/keyboards/cutie_club/keebcats/denis/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Keebcats Denis 80", "manufacturer": "Cutie Club", - "url": "", "maintainer": "Cutie Club", "usb": { "vid": "0xFB9C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/cutie_club/keebcats/dougal/keyboard.json b/keyboards/cutie_club/keebcats/dougal/keyboard.json index 915e3ad15c..6d96936d4a 100644 --- a/keyboards/cutie_club/keebcats/dougal/keyboard.json +++ b/keyboards/cutie_club/keebcats/dougal/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Keebcats Dougal 65", "manufacturer": "Cutie Club", - "url": "", "maintainer": "Cutie Club", "usb": { "vid": "0xFB9C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/cutie_club/novus/keyboard.json b/keyboards/cutie_club/novus/keyboard.json index 97bb81a71f..73ecac31f0 100644 --- a/keyboards/cutie_club/novus/keyboard.json +++ b/keyboards/cutie_club/novus/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Novus", "manufacturer": "Cutie Club", - "url": "", "maintainer": "Cutie Club", "usb": { "vid": "0xFB9C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/cutie_club/wraith/keyboard.json b/keyboards/cutie_club/wraith/keyboard.json index 7cc29caf25..b163eb76a9 100644 --- a/keyboards/cutie_club/wraith/keyboard.json +++ b/keyboards/cutie_club/wraith/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Wraith", "manufacturer": "Amber", - "url": "", "maintainer": "amberstarlight", "usb": { "vid": "0xFEED", @@ -11,7 +10,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/cx60/keyboard.json b/keyboards/cx60/keyboard.json index 9748d934a6..846b870d95 100644 --- a/keyboards/cx60/keyboard.json +++ b/keyboards/cx60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "CX60", "manufacturer": "CX60", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4358", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/cxt_studio/12e3/keyboard.json b/keyboards/cxt_studio/12e3/keyboard.json index 763f6bd5b9..0b8949cda7 100644 --- a/keyboards/cxt_studio/12e3/keyboard.json +++ b/keyboards/cxt_studio/12e3/keyboard.json @@ -64,7 +64,6 @@ {"flags": 4, "matrix": [2, 0], "x": 0, "y": 2} ] }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x12E3", diff --git a/keyboards/cxt_studio/12e4/keyboard.json b/keyboards/cxt_studio/12e4/keyboard.json index b48e75f4ca..9b54d6fd26 100644 --- a/keyboards/cxt_studio/12e4/keyboard.json +++ b/keyboards/cxt_studio/12e4/keyboard.json @@ -6,7 +6,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, @@ -66,7 +65,6 @@ {"flags": 4, "matrix": [2, 0], "x": 0, "y": 2} ] }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0xC401", diff --git a/keyboards/cybergear/macro25/keyboard.json b/keyboards/cybergear/macro25/keyboard.json index a1fca49406..14ea5cc77d 100644 --- a/keyboards/cybergear/macro25/keyboard.json +++ b/keyboards/cybergear/macro25/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/dailycraft/bat43/info.json b/keyboards/dailycraft/bat43/info.json index 19aaa540dd..90e14e3434 100644 --- a/keyboards/dailycraft/bat43/info.json +++ b/keyboards/dailycraft/bat43/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "bat43", "manufacturer": "yfuku", - "url": "", "maintainer": "yfuku", "usb": { "vid": "0x5946", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "mousekey": true, "nkro": false diff --git a/keyboards/dailycraft/claw44/rev1/keyboard.json b/keyboards/dailycraft/claw44/rev1/keyboard.json index 62b069a490..2391bc262f 100644 --- a/keyboards/dailycraft/claw44/rev1/keyboard.json +++ b/keyboards/dailycraft/claw44/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "claw44", "manufacturer": "yfuku", - "url": "", "maintainer": "yfuku", "usb": { "vid": "0x5946", diff --git a/keyboards/dailycraft/owl8/keyboard.json b/keyboards/dailycraft/owl8/keyboard.json index a4a1a70e3e..fb3f2042f4 100644 --- a/keyboards/dailycraft/owl8/keyboard.json +++ b/keyboards/dailycraft/owl8/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "owl8", "manufacturer": "yfuku", - "url": "", "maintainer": "yfuku", "usb": { "vid": "0x5946", @@ -18,8 +17,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/dailycraft/sandbox/rev1/keyboard.json b/keyboards/dailycraft/sandbox/rev1/keyboard.json index 8658de96df..50a114457d 100644 --- a/keyboards/dailycraft/sandbox/rev1/keyboard.json +++ b/keyboards/dailycraft/sandbox/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "sandbox rev1", "manufacturer": "yfuku", - "url": "", "maintainer": "yfuku", "usb": { "vid": "0x5946", diff --git a/keyboards/dailycraft/sandbox/rev2/keyboard.json b/keyboards/dailycraft/sandbox/rev2/keyboard.json index 1eb61ee12c..b1991cf56c 100644 --- a/keyboards/dailycraft/sandbox/rev2/keyboard.json +++ b/keyboards/dailycraft/sandbox/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "sandbox rev2", "manufacturer": "yfuku", - "url": "", "maintainer": "yfuku", "usb": { "vid": "0x5946", diff --git a/keyboards/dailycraft/stickey4/keyboard.json b/keyboards/dailycraft/stickey4/keyboard.json index d0e2a491d3..d4cf997877 100644 --- a/keyboards/dailycraft/stickey4/keyboard.json +++ b/keyboards/dailycraft/stickey4/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "stickey4", "manufacturer": "yfuku", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5946", @@ -18,8 +17,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/dailycraft/wings42/rev1/keyboard.json b/keyboards/dailycraft/wings42/rev1/keyboard.json index f4a3949c61..307b675d06 100644 --- a/keyboards/dailycraft/wings42/rev1/keyboard.json +++ b/keyboards/dailycraft/wings42/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "wings42 rev1", "manufacturer": "yfuku", - "url": "", "maintainer": "yfuku", "usb": { "vid": "0x5946", diff --git a/keyboards/dailycraft/wings42/rev1_extkeys/keyboard.json b/keyboards/dailycraft/wings42/rev1_extkeys/keyboard.json index bebe264cc0..ef5b4331b1 100644 --- a/keyboards/dailycraft/wings42/rev1_extkeys/keyboard.json +++ b/keyboards/dailycraft/wings42/rev1_extkeys/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "wings42 rev1_extkeys", "manufacturer": "yfuku", - "url": "", "maintainer": "yfuku", "usb": { "vid": "0x5946", diff --git a/keyboards/dailycraft/wings42/rev2/keyboard.json b/keyboards/dailycraft/wings42/rev2/keyboard.json index 3f2cb1b766..4d41f54f3b 100644 --- a/keyboards/dailycraft/wings42/rev2/keyboard.json +++ b/keyboards/dailycraft/wings42/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "wings42 rev2", "manufacturer": "yfuku", - "url": "", "maintainer": "yfuku", "usb": { "vid": "0x5946", diff --git a/keyboards/daji/seis_cinco/keyboard.json b/keyboards/daji/seis_cinco/keyboard.json index 358dfc17ce..837f01380d 100644 --- a/keyboards/daji/seis_cinco/keyboard.json +++ b/keyboards/daji/seis_cinco/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Seis Cinco", "manufacturer": "Daji", - "url": "", "maintainer": "toraifu", "usb": { "vid": "0xBF00", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/dark/magnum_ergo_1/keyboard.json b/keyboards/dark/magnum_ergo_1/keyboard.json index a52de6decc..d4a74d592b 100644 --- a/keyboards/dark/magnum_ergo_1/keyboard.json +++ b/keyboards/dark/magnum_ergo_1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Magnum Ergo 1", "manufacturer": "Gondolindrim X Dark", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x4744", @@ -19,8 +18,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/darkproject/kd83a_bfg_edition/keyboard.json b/keyboards/darkproject/kd83a_bfg_edition/keyboard.json index 23bd2b6981..f8964bf461 100644 --- a/keyboards/darkproject/kd83a_bfg_edition/keyboard.json +++ b/keyboards/darkproject/kd83a_bfg_edition/keyboard.json @@ -14,8 +14,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, @@ -174,7 +172,6 @@ ], "sleep": true }, - "url": "", "usb": { "device_version": "0.0.3", "pid": "0xE392", diff --git a/keyboards/darkproject/kd87a_bfg_edition/keyboard.json b/keyboards/darkproject/kd87a_bfg_edition/keyboard.json index 1e0d7f5e8b..cd6ae14108 100644 --- a/keyboards/darkproject/kd87a_bfg_edition/keyboard.json +++ b/keyboards/darkproject/kd87a_bfg_edition/keyboard.json @@ -180,7 +180,6 @@ ], "sleep": true }, - "url": "", "usb": { "device_version": "0.0.3", "pid": "0xE393", diff --git a/keyboards/darmoshark/k3/keyboard.json b/keyboards/darmoshark/k3/keyboard.json index ff5047b93a..c58b295404 100644 --- a/keyboards/darmoshark/k3/keyboard.json +++ b/keyboards/darmoshark/k3/keyboard.json @@ -2,7 +2,6 @@ "manufacturer": "Darmoshark", "keyboard_name": "K3 QMK", "maintainer": "Proceee", - "url": "", "processor": "WB32FQ95", "bootloader": "wb32-dfu", "usb": { @@ -14,8 +13,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -33,8 +30,7 @@ "cols": ["B1", "C7", "C13", "B9"] }, "indicators": { - "num_lock": "C5", - "on_state": 1 + "num_lock": "C5" }, "ws2812": { "pin": "A8" diff --git a/keyboards/dasky/reverb/keyboard.json b/keyboards/dasky/reverb/keyboard.json index e7e203ebf6..bfeb9ef675 100644 --- a/keyboards/dasky/reverb/keyboard.json +++ b/keyboards/dasky/reverb/keyboard.json @@ -124,7 +124,6 @@ {"matrix": [3, 0], "x": 129, "y": 13, "flags": 4} ] }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/db/db63/keyboard.json b/keyboards/db/db63/keyboard.json index ec41b8c313..b3db08c01c 100644 --- a/keyboards/db/db63/keyboard.json +++ b/keyboards/db/db63/keyboard.json @@ -12,7 +12,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/dc01/arrow/keyboard.json b/keyboards/dc01/arrow/keyboard.json index f56646367f..c8a2b229ea 100644 --- a/keyboards/dc01/arrow/keyboard.json +++ b/keyboards/dc01/arrow/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "DC01 Arrow", "manufacturer": "Mechboards", - "url": "", "maintainer": "Yiancar-Designs", "usb": { "vid": "0x8968", diff --git a/keyboards/dc01/left/keyboard.json b/keyboards/dc01/left/keyboard.json index 2238f67564..01942c099c 100644 --- a/keyboards/dc01/left/keyboard.json +++ b/keyboards/dc01/left/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "DC01 Left", "manufacturer": "Mechboards", - "url": "", "maintainer": "Yiancar-Designs", "usb": { "vid": "0x8968", diff --git a/keyboards/dc01/numpad/keyboard.json b/keyboards/dc01/numpad/keyboard.json index 900af6e542..b78d8b9ee5 100644 --- a/keyboards/dc01/numpad/keyboard.json +++ b/keyboards/dc01/numpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "DC01 Numpad", "manufacturer": "Mechboards", - "url": "", "maintainer": "Yiancar-Designs", "usb": { "vid": "0x8968", diff --git a/keyboards/dc01/right/keyboard.json b/keyboards/dc01/right/keyboard.json index 36dc7a7056..3811ec3331 100644 --- a/keyboards/dc01/right/keyboard.json +++ b/keyboards/dc01/right/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "DC01 Right", "manufacturer": "Mechboards", - "url": "", "maintainer": "Yiancar-Designs", "usb": { "vid": "0x8968", diff --git a/keyboards/decent/tkl/keyboard.json b/keyboards/decent/tkl/keyboard.json index 96b472c6fc..d5b0c972c6 100644 --- a/keyboards/decent/tkl/keyboard.json +++ b/keyboards/decent/tkl/keyboard.json @@ -11,8 +11,6 @@ "bootmagic": true, "rgb_matrix": true, "oled": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/deemen17/de60fs/config.h b/keyboards/deemen17/de60/r1/config.h index e21d4ae373..e21d4ae373 100644 --- a/keyboards/deemen17/de60fs/config.h +++ b/keyboards/deemen17/de60/r1/config.h diff --git a/keyboards/deemen17/de60fs/keyboard.json b/keyboards/deemen17/de60/r1/keyboard.json index 573c012baa..62de2691ce 100644 --- a/keyboards/deemen17/de60fs/keyboard.json +++ b/keyboards/deemen17/de60/r1/keyboard.json @@ -1,6 +1,6 @@ { - "manufacturer": "Deemen17", - "keyboard_name": "De60fs", + "manufacturer": "Deemen17 Works", + "keyboard_name": "DE60 R1", "maintainer": "Deemen17", "bootloader": "rp2040", "build": { diff --git a/keyboards/deemen17/de60fs/keymaps/default/keymap.c b/keyboards/deemen17/de60/r1/keymaps/default/keymap.c index f93f61d768..f93f61d768 100644 --- a/keyboards/deemen17/de60fs/keymaps/default/keymap.c +++ b/keyboards/deemen17/de60/r1/keymaps/default/keymap.c diff --git a/keyboards/deemen17/de60fs/readme.md b/keyboards/deemen17/de60/r1/readme.md index e5135691a8..e71a2fc412 100644 --- a/keyboards/deemen17/de60fs/readme.md +++ b/keyboards/deemen17/de60/r1/readme.md @@ -1,6 +1,6 @@ -# De60fs +# DE60 Round 1 - + A GH60 form factor PCB for 60% keyboards. Uses a Left USB Type C connector or 5 JST SH positions for daughter board. @@ -10,11 +10,11 @@ A GH60 form factor PCB for 60% keyboards. Uses a Left USB Type C connector or 5 Make example for this keyboard (after setting up your build environment): - make deemen17/de60fs:default + make deemen17/de60/r1:default Flashing example for this keyboard: - make deemen17/de60fs:default:flash + make deemen17/de60/r1:default:flash See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/deemen17/de60/readme.md b/keyboards/deemen17/de60/readme.md new file mode 100644 index 0000000000..c5ea64a6a6 --- /dev/null +++ b/keyboards/deemen17/de60/readme.md @@ -0,0 +1,17 @@ +# DE60 + +Deemen17 Works's 60% PCB Platform, which works as the base for our 60%-layout PCB designs. + +* Keyboard Maintainer: [Deemen17](https://github.com/Deemen17) +* Hardware Supported: DE60 PCBs +* Hardware Availability: [Deemen17 Facebook Page](https://www.facebook.com/deemen17/), [Deemen17 Works Instagram](https://www.instagram.com/deemen17.works) + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (ESC/Escape) and plug in the keyboard +* **Physical reset button**: Double tap the button RESET on the back of the PCB +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
\ No newline at end of file diff --git a/keyboards/delikeeb/flatbread60/keyboard.json b/keyboards/delikeeb/flatbread60/keyboard.json index b0cf794dfb..eabb301dc0 100644 --- a/keyboards/delikeeb/flatbread60/keyboard.json +++ b/keyboards/delikeeb/flatbread60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Flatbread60", "manufacturer": "delikeeb", - "url": "", "maintainer": "noclew", "usb": { "vid": "0x9906", @@ -31,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/delikeeb/vaguettelite/keyboard.json b/keyboards/delikeeb/vaguettelite/keyboard.json index 56919958f2..61e65105fb 100644 --- a/keyboards/delikeeb/vaguettelite/keyboard.json +++ b/keyboards/delikeeb/vaguettelite/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Vaguette Lite", "manufacturer": "dELIKEEb", - "url": "", "maintainer": "noclew", "usb": { "vid": "0x9906", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/delikeeb/vanana/info.json b/keyboards/delikeeb/vanana/info.json index 520cd92b09..0ba67d4af5 100644 --- a/keyboards/delikeeb/vanana/info.json +++ b/keyboards/delikeeb/vanana/info.json @@ -1,6 +1,5 @@ { "manufacturer": "dELIKEEb", - "url": "", "maintainer": "noclew", "usb": { "vid": "0x9906", diff --git a/keyboards/delikeeb/vanana/rev1/keyboard.json b/keyboards/delikeeb/vanana/rev1/keyboard.json index d8d5d2e4c9..66aeeaa877 100644 --- a/keyboards/delikeeb/vanana/rev1/keyboard.json +++ b/keyboards/delikeeb/vanana/rev1/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/delikeeb/vanana/rev2/keyboard.json b/keyboards/delikeeb/vanana/rev2/keyboard.json index 9da7a9dd88..9a7052f65f 100644 --- a/keyboards/delikeeb/vanana/rev2/keyboard.json +++ b/keyboards/delikeeb/vanana/rev2/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/delikeeb/vaneela/keyboard.json b/keyboards/delikeeb/vaneela/keyboard.json index 5f76c8b7ab..8e30581e70 100644 --- a/keyboards/delikeeb/vaneela/keyboard.json +++ b/keyboards/delikeeb/vaneela/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/delikeeb/vaneelaex/keyboard.json b/keyboards/delikeeb/vaneelaex/keyboard.json index 9810d341ab..1890c860e6 100644 --- a/keyboards/delikeeb/vaneelaex/keyboard.json +++ b/keyboards/delikeeb/vaneelaex/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/delikeeb/waaffle/rev3/elite_c/keyboard.json b/keyboards/delikeeb/waaffle/rev3/elite_c/keyboard.json index 22fb33aade..86c1572713 100644 --- a/keyboards/delikeeb/waaffle/rev3/elite_c/keyboard.json +++ b/keyboards/delikeeb/waaffle/rev3/elite_c/keyboard.json @@ -3,8 +3,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/delikeeb/waaffle/rev3/info.json b/keyboards/delikeeb/waaffle/rev3/info.json index 1201411d46..761c2dc3c7 100644 --- a/keyboards/delikeeb/waaffle/rev3/info.json +++ b/keyboards/delikeeb/waaffle/rev3/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Waaffle rev3", "manufacturer": "dELIKEEb", - "url": "", "maintainer": "noclew", "usb": { "vid": "0x9906", diff --git a/keyboards/delikeeb/waaffle/rev3/pro_micro/keyboard.json b/keyboards/delikeeb/waaffle/rev3/pro_micro/keyboard.json index 55e68c4393..b1d721e038 100644 --- a/keyboards/delikeeb/waaffle/rev3/pro_micro/keyboard.json +++ b/keyboards/delikeeb/waaffle/rev3/pro_micro/keyboard.json @@ -3,8 +3,6 @@ "bootloader": "caterina", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/deltapad/keyboard.json b/keyboards/deltapad/keyboard.json index 23683bbd1e..5fc2edff63 100644 --- a/keyboards/deltapad/keyboard.json +++ b/keyboards/deltapad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "deltapad", "manufacturer": "Richard Snijder", - "url": "", "maintainer": "Richard Snijder", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/demiurge/keyboard.json b/keyboards/demiurge/keyboard.json index ad5264323b..56ac687cd5 100644 --- a/keyboards/demiurge/keyboard.json +++ b/keyboards/demiurge/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Demiurge", "manufacturer": "ojthetiny", - "url": "", "maintainer": "ojthetiny", "usb": { "vid": "0x6F6A", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/deng/djam/keyboard.json b/keyboards/deng/djam/keyboard.json index 94e2aca2ec..a39c234bfa 100644 --- a/keyboards/deng/djam/keyboard.json +++ b/keyboards/deng/djam/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "DJam", "manufacturer": "Leo Deng", - "url": "", "maintainer": "myst729", "usb": { "vid": "0xDE29", @@ -21,8 +20,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/deng/thirty/keyboard.json b/keyboards/deng/thirty/keyboard.json index a26d727f12..da36ae19f5 100644 --- a/keyboards/deng/thirty/keyboard.json +++ b/keyboards/deng/thirty/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Thirty", "manufacturer": "Leo Deng", - "url": "", "maintainer": "myst729", "usb": { "vid": "0xDE29", diff --git a/keyboards/densus/alveus/mx/keyboard.json b/keyboards/densus/alveus/mx/keyboard.json index 839c84fb45..dd3f1bde05 100644 --- a/keyboards/densus/alveus/mx/keyboard.json +++ b/keyboards/densus/alveus/mx/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Alveus", "manufacturer": "Mechlovin Studio", - "url": "", "usb": { "vid": "0xDE00", "pid": "0x0F70", diff --git a/keyboards/dichotomy/keyboard.json b/keyboards/dichotomy/keyboard.json index bc3546a082..33a799b0e3 100644 --- a/keyboards/dichotomy/keyboard.json +++ b/keyboards/dichotomy/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dichotomy", "manufacturer": "Broekhuijsen", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/dinofizz/fnrow/v1/keyboard.json b/keyboards/dinofizz/fnrow/v1/keyboard.json index 16f80b780d..befcc05c0a 100644 --- a/keyboards/dinofizz/fnrow/v1/keyboard.json +++ b/keyboards/dinofizz/fnrow/v1/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/dk60/keyboard.json b/keyboards/dk60/keyboard.json index a88920814d..1eb1dbe90a 100644 --- a/keyboards/dk60/keyboard.json +++ b/keyboards/dk60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "DK60", "manufacturer": "DARKOU", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/dm9records/ergoinu/keyboard.json b/keyboards/dm9records/ergoinu/keyboard.json index 1f91a06600..0e124d1a21 100644 --- a/keyboards/dm9records/ergoinu/keyboard.json +++ b/keyboards/dm9records/ergoinu/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ergoinu", "manufacturer": "Dm9Records", - "url": "", "maintainer": "hsgw(Takuya Urakawa)", "usb": { "vid": "0x04D8", diff --git a/keyboards/dm9records/lain/keyboard.json b/keyboards/dm9records/lain/keyboard.json index 32cece9f15..1f02a98fc4 100644 --- a/keyboards/dm9records/lain/keyboard.json +++ b/keyboards/dm9records/lain/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/dm9records/plaid/keymaps/default/keymap.c b/keyboards/dm9records/plaid/keymaps/default/keymap.c index 0d8d24c575..3ee327f65e 100644 --- a/keyboards/dm9records/plaid/keymaps/default/keymap.c +++ b/keyboards/dm9records/plaid/keymaps/default/keymap.c @@ -311,9 +311,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (!eeconfig_is_enabled()) { eeconfig_init(); } - keymap_config.raw = eeconfig_read_keymap(); + eeconfig_read_keymap(&keymap_config); keymap_config.nkro = 1; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } return false; break; diff --git a/keyboards/dmqdesign/spin/keyboard.json b/keyboards/dmqdesign/spin/keyboard.json index b271f1ebd5..dd3cbaa838 100644 --- a/keyboards/dmqdesign/spin/keyboard.json +++ b/keyboards/dmqdesign/spin/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "midi": true, diff --git a/keyboards/dnworks/frltkl/keyboard.json b/keyboards/dnworks/frltkl/keyboard.json index 86796a6084..1561a648a0 100644 --- a/keyboards/dnworks/frltkl/keyboard.json +++ b/keyboards/dnworks/frltkl/keyboard.json @@ -13,13 +13,10 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true }, "indicators": { - "caps_lock": "GP27", - "on_state": 1 + "caps_lock": "GP27" }, "diode_direction": "COL2ROW", "matrix_pins": { diff --git a/keyboards/dnworks/sbl/keyboard.json b/keyboards/dnworks/sbl/keyboard.json index 2086fc5aa1..d9c6fa1bb3 100644 --- a/keyboards/dnworks/sbl/keyboard.json +++ b/keyboards/dnworks/sbl/keyboard.json @@ -13,13 +13,10 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true }, "indicators": { - "caps_lock": "GP29", - "on_state": 1 + "caps_lock": "GP29" }, "diode_direction": "COL2ROW", "matrix_pins": { diff --git a/keyboards/dnworks/tkl87/keyboard.json b/keyboards/dnworks/tkl87/keyboard.json index 6b56435ae3..af912ae25d 100644 --- a/keyboards/dnworks/tkl87/keyboard.json +++ b/keyboards/dnworks/tkl87/keyboard.json @@ -17,8 +17,7 @@ }, "indicators": { "caps_lock": "GP27", - "scroll_lock": "GP1", - "on_state": 1 + "scroll_lock": "GP1" }, "diode_direction": "COL2ROW", "matrix_pins": { diff --git a/keyboards/do60/keyboard.json b/keyboards/do60/keyboard.json index 2a7d585f65..0c6cd8db83 100644 --- a/keyboards/do60/keyboard.json +++ b/keyboards/do60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Do60", "manufacturer": "Doyu Studio", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4453", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/doio/kb04/keyboard.json b/keyboards/doio/kb04/keyboard.json index 2455f82e03..ea5c58c71c 100644 --- a/keyboards/doio/kb04/keyboard.json +++ b/keyboards/doio/kb04/keyboard.json @@ -14,8 +14,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/doio/kb09/keyboard.json b/keyboards/doio/kb09/keyboard.json index e3012f510c..a9c0e2a579 100644 --- a/keyboards/doio/kb09/keyboard.json +++ b/keyboards/doio/kb09/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, @@ -88,7 +86,6 @@ "max_brightness": 200, "sleep": true }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x0901", diff --git a/keyboards/doio/kb12/keyboard.json b/keyboards/doio/kb12/keyboard.json index c87d5f9544..134c4aff76 100644 --- a/keyboards/doio/kb12/keyboard.json +++ b/keyboards/doio/kb12/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KB12-01", "manufacturer": "DOIO", - "url": "", "maintainer": "DOIO2022", "usb": { "vid": "0xD010", @@ -94,8 +93,6 @@ "bootloader": "stm32duino", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/doio/kb19/keyboard.json b/keyboards/doio/kb19/keyboard.json index faaaedd36f..170794cef7 100644 --- a/keyboards/doio/kb19/keyboard.json +++ b/keyboards/doio/kb19/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KB19-01", "manufacturer": "DOIO", - "url": "", "maintainer": "DOIO2022", "usb": { "vid": "0xD010", @@ -13,8 +12,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "encoder": true, "nkro": false, "rgblight": true diff --git a/keyboards/doio/kb30/keyboard.json b/keyboards/doio/kb30/keyboard.json index 388df2d9e3..86c1535a5d 100644 --- a/keyboards/doio/kb30/keyboard.json +++ b/keyboards/doio/kb30/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KB30-01", "manufacturer": "DOIO", - "url": "", "maintainer": "DOIO2022", "usb": { "vid": "0xD010", @@ -93,8 +92,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/doio/kb38/keyboard.json b/keyboards/doio/kb38/keyboard.json index a46f1a6a45..5214c60d08 100644 --- a/keyboards/doio/kb38/keyboard.json +++ b/keyboards/doio/kb38/keyboard.json @@ -7,8 +7,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/doio/kb3x/keyboard.json b/keyboards/doio/kb3x/keyboard.json index be0d138439..eb9e843745 100644 --- a/keyboards/doio/kb3x/keyboard.json +++ b/keyboards/doio/kb3x/keyboard.json @@ -86,7 +86,6 @@ "max_brightness": 200, "sleep": true }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x3F01", diff --git a/keyboards/donutcables/budget96/keyboard.json b/keyboards/donutcables/budget96/keyboard.json index eaba1b7c46..6b9b99abd9 100644 --- a/keyboards/donutcables/budget96/keyboard.json +++ b/keyboards/donutcables/budget96/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Budget96", "manufacturer": "DonutCables", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4443", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/donutcables/scrabblepad/keyboard.json b/keyboards/donutcables/scrabblepad/keyboard.json index aa03523ed8..f614dffa4f 100644 --- a/keyboards/donutcables/scrabblepad/keyboard.json +++ b/keyboards/donutcables/scrabblepad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ScrabblePad", "manufacturer": "DonutCables", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4443", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/doodboard/duckboard/keyboard.json b/keyboards/doodboard/duckboard/keyboard.json index bb0b5c0f00..7e88a22e10 100644 --- a/keyboards/doodboard/duckboard/keyboard.json +++ b/keyboards/doodboard/duckboard/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, "console": true, "encoder": true, "extrakey": true, diff --git a/keyboards/doodboard/duckboard_r2/keyboard.json b/keyboards/doodboard/duckboard_r2/keyboard.json index 94c79d382c..6cbf51bcb4 100644 --- a/keyboards/doodboard/duckboard_r2/keyboard.json +++ b/keyboards/doodboard/duckboard_r2/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, "console": true, "encoder": true, "extrakey": true, diff --git a/keyboards/doppelganger/keyboard.json b/keyboards/doppelganger/keyboard.json index 8856927012..72b3604596 100644 --- a/keyboards/doppelganger/keyboard.json +++ b/keyboards/doppelganger/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Doppelganger", "manufacturer": "Yiancar-Designs", - "url": "", "maintainer": "yiancar", "usb": { "vid": "0x8968", diff --git a/keyboards/doro67/multi/keyboard.json b/keyboards/doro67/multi/keyboard.json index a3a652e40b..6749a234cf 100644 --- a/keyboards/doro67/multi/keyboard.json +++ b/keyboards/doro67/multi/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Doro67 Multi", "manufacturer": "Backprop Studio", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4250", diff --git a/keyboards/doro67/rgb/keyboard.json b/keyboards/doro67/rgb/keyboard.json index 8f372dc9c7..de95db63d6 100644 --- a/keyboards/doro67/rgb/keyboard.json +++ b/keyboards/doro67/rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Doro67 RGB", "manufacturer": "Backprop Studio", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4250", @@ -56,8 +55,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/dotmod/dymium65/keyboard.json b/keyboards/dotmod/dymium65/keyboard.json index c5cd1b2cb7..301b69edc5 100644 --- a/keyboards/dotmod/dymium65/keyboard.json +++ b/keyboards/dotmod/dymium65/keyboard.json @@ -19,8 +19,6 @@ "features": { "bootmagic": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "mousekey": true, "rgb_matrix": true diff --git a/keyboards/dp3000/rev1/keyboard.json b/keyboards/dp3000/rev1/keyboard.json index aa7ff8bc0a..00ee2bb59e 100644 --- a/keyboards/dp3000/rev1/keyboard.json +++ b/keyboards/dp3000/rev1/keyboard.json @@ -2,8 +2,6 @@ "keyboard_name": "dp3000", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "encoder": true, "oled": true, diff --git a/keyboards/dp3000/rev2/keyboard.json b/keyboards/dp3000/rev2/keyboard.json index 7d82c38460..202d3b7bf6 100644 --- a/keyboards/dp3000/rev2/keyboard.json +++ b/keyboards/dp3000/rev2/keyboard.json @@ -2,8 +2,6 @@ "keyboard_name": "dp3000 rev2", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "encoder": true, "oled": true, diff --git a/keyboards/dp60/keyboard.json b/keyboards/dp60/keyboard.json index 51a2c08d47..2c42747bb4 100644 --- a/keyboards/dp60/keyboard.json +++ b/keyboards/dp60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "DP60", "manufacturer": "astro", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x60BE", diff --git a/keyboards/draculad/keyboard.json b/keyboards/draculad/keyboard.json index 3ba2f0efae..c72bda7c38 100644 --- a/keyboards/draculad/keyboard.json +++ b/keyboards/draculad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "DracuLad", "manufacturer": "MangoIV", - "url": "", "maintainer": "MangoIV", "usb": { "vid": "0xFEED", diff --git a/keyboards/draytronics/daisy/keyboard.json b/keyboards/draytronics/daisy/keyboard.json index 92b0b54f43..30a32fd457 100644 --- a/keyboards/draytronics/daisy/keyboard.json +++ b/keyboards/draytronics/daisy/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/draytronics/elise/keyboard.json b/keyboards/draytronics/elise/keyboard.json index 782c61d764..6a273d0d1d 100644 --- a/keyboards/draytronics/elise/keyboard.json +++ b/keyboards/draytronics/elise/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/draytronics/elise_v2/keyboard.json b/keyboards/draytronics/elise_v2/keyboard.json index 217f837e19..1feabdbb7c 100644 --- a/keyboards/draytronics/elise_v2/keyboard.json +++ b/keyboards/draytronics/elise_v2/keyboard.json @@ -32,7 +32,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/drewkeys/iskar/keyboard.json b/keyboards/drewkeys/iskar/keyboard.json index 66d4ebd74d..ccbbbc16f4 100644 --- a/keyboards/drewkeys/iskar/keyboard.json +++ b/keyboards/drewkeys/iskar/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/drhigsby/bkf/keyboard.json b/keyboards/drhigsby/bkf/keyboard.json index a3933c8228..76808f93de 100644 --- a/keyboards/drhigsby/bkf/keyboard.json +++ b/keyboards/drhigsby/bkf/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/drhigsby/dubba175/keyboard.json b/keyboards/drhigsby/dubba175/keyboard.json index 69570a1c2f..0f395d10ff 100644 --- a/keyboards/drhigsby/dubba175/keyboard.json +++ b/keyboards/drhigsby/dubba175/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/drhigsby/ogurec/info.json b/keyboards/drhigsby/ogurec/info.json index f3c753f2c0..7e65e924e2 100644 --- a/keyboards/drhigsby/ogurec/info.json +++ b/keyboards/drhigsby/ogurec/info.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/drhigsby/packrat/keyboard.json b/keyboards/drhigsby/packrat/keyboard.json index a836b0bf96..b41b383aee 100644 --- a/keyboards/drhigsby/packrat/keyboard.json +++ b/keyboards/drhigsby/packrat/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/drop/alt/v2/keyboard.json b/keyboards/drop/alt/v2/keyboard.json index 8363aca5cf..18bbe5f76d 100644 --- a/keyboards/drop/alt/v2/keyboard.json +++ b/keyboards/drop/alt/v2/keyboard.json @@ -20,8 +20,6 @@ "features": { "rgb_matrix": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/drop/cstm65/keyboard.json b/keyboards/drop/cstm65/keyboard.json index 708649966e..4ee594f127 100644 --- a/keyboards/drop/cstm65/keyboard.json +++ b/keyboards/drop/cstm65/keyboard.json @@ -20,8 +20,6 @@ "features": { "rgb_matrix": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/drop/cstm80/keyboard.json b/keyboards/drop/cstm80/keyboard.json index 5ce4e666b1..4489eebd4a 100644 --- a/keyboards/drop/cstm80/keyboard.json +++ b/keyboards/drop/cstm80/keyboard.json @@ -20,8 +20,6 @@ "features": { "rgb_matrix": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/drop/ctrl/v2/keyboard.json b/keyboards/drop/ctrl/v2/keyboard.json index f461800dde..402327ed31 100644 --- a/keyboards/drop/ctrl/v2/keyboard.json +++ b/keyboards/drop/ctrl/v2/keyboard.json @@ -20,8 +20,6 @@ "features": { "rgb_matrix": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/drop/sense75/keyboard.json b/keyboards/drop/sense75/keyboard.json index 052b494375..eb9cb121c2 100644 --- a/keyboards/drop/sense75/keyboard.json +++ b/keyboards/drop/sense75/keyboard.json @@ -21,8 +21,6 @@ "rgb_matrix": true, "encoder": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/drop/shift/v2/keyboard.json b/keyboards/drop/shift/v2/keyboard.json index 212263d71c..85556998f2 100644 --- a/keyboards/drop/shift/v2/keyboard.json +++ b/keyboards/drop/shift/v2/keyboard.json @@ -20,8 +20,6 @@ "features": { "rgb_matrix": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/drop/thekey/v1/keyboard.json b/keyboards/drop/thekey/v1/keyboard.json index f1f204e3a0..3038171fb3 100644 --- a/keyboards/drop/thekey/v1/keyboard.json +++ b/keyboards/drop/thekey/v1/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "backlight": true, diff --git a/keyboards/drop/thekey/v2/keyboard.json b/keyboards/drop/thekey/v2/keyboard.json index ced9901bea..7497907187 100644 --- a/keyboards/drop/thekey/v2/keyboard.json +++ b/keyboards/drop/thekey/v2/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "rgblight": true diff --git a/keyboards/druah/dk_saver_redux/keyboard.json b/keyboards/druah/dk_saver_redux/keyboard.json index 6c76e10756..76f6131358 100644 --- a/keyboards/druah/dk_saver_redux/keyboard.json +++ b/keyboards/druah/dk_saver_redux/keyboard.json @@ -15,8 +15,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/dtisaac/cg108/keyboard.json b/keyboards/dtisaac/cg108/keyboard.json index 28e5563111..3328fcd96a 100644 --- a/keyboards/dtisaac/cg108/keyboard.json +++ b/keyboards/dtisaac/cg108/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "CG108", "manufacturer": "DTIsaac", - "url": "", "maintainer": "daotakisaac", "usb": { "vid": "0x4454", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/dtisaac/dosa40rgb/keyboard.json b/keyboards/dtisaac/dosa40rgb/keyboard.json index 5f3654d2c5..4f5522947a 100644 --- a/keyboards/dtisaac/dosa40rgb/keyboard.json +++ b/keyboards/dtisaac/dosa40rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": ">_Dosa40", "manufacturer": "DTIsaac", - "url": "", "maintainer": "DTIsaac", "usb": { "vid": "0x4454", @@ -72,8 +71,6 @@ "features": { "bluetooth": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false, diff --git a/keyboards/dtisaac/dtisaac01/keyboard.json b/keyboards/dtisaac/dtisaac01/keyboard.json index 0b4b1b3057..33885b73f7 100644 --- a/keyboards/dtisaac/dtisaac01/keyboard.json +++ b/keyboards/dtisaac/dtisaac01/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "dtisaac01", "manufacturer": "DTIsaac", - "url": "", "maintainer": "DTIsaac", "usb": { "vid": "0x4454", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/duck/jetfire/keyboard.json b/keyboards/duck/jetfire/keyboard.json index a97ff193a8..d9adf05ca4 100644 --- a/keyboards/duck/jetfire/keyboard.json +++ b/keyboards/duck/jetfire/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Jetfire", "manufacturer": "Duck", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x444B", diff --git a/keyboards/duck/lightsaver/keyboard.json b/keyboards/duck/lightsaver/keyboard.json index d4e1cd1e35..978e0c6e23 100644 --- a/keyboards/duck/lightsaver/keyboard.json +++ b/keyboards/duck/lightsaver/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Lightsaver V3", "manufacturer": "Duck", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x444B", diff --git a/keyboards/duck/octagon/v1/keyboard.json b/keyboards/duck/octagon/v1/keyboard.json index 47f3acdc4d..7dfd9ec3ea 100644 --- a/keyboards/duck/octagon/v1/keyboard.json +++ b/keyboards/duck/octagon/v1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Octagon V1", "manufacturer": "Duck", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x444B", diff --git a/keyboards/duck/octagon/v2/keyboard.json b/keyboards/duck/octagon/v2/keyboard.json index 4afbc42d47..b3a1eb784d 100644 --- a/keyboards/duck/octagon/v2/keyboard.json +++ b/keyboards/duck/octagon/v2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Octagon V2", "manufacturer": "Duck", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x444B", diff --git a/keyboards/duck/orion/v3/keyboard.json b/keyboards/duck/orion/v3/keyboard.json index ba479aa0a2..9a7251c650 100644 --- a/keyboards/duck/orion/v3/keyboard.json +++ b/keyboards/duck/orion/v3/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Orion V3", "manufacturer": "Duck", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x444B", diff --git a/keyboards/duck/tcv3/keyboard.json b/keyboards/duck/tcv3/keyboard.json index c03142b4db..699a44e69b 100644 --- a/keyboards/duck/tcv3/keyboard.json +++ b/keyboards/duck/tcv3/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "TC-V3", "manufacturer": "Duck", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x444B", diff --git a/keyboards/dumbo/keyboard.json b/keyboards/dumbo/keyboard.json index b833915d80..8026f22790 100644 --- a/keyboards/dumbo/keyboard.json +++ b/keyboards/dumbo/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dumbo", "manufacturer": "trip_trap", - "url": "", "maintainer": "adamnaldal", "usb": { "vid": "0xFEED", diff --git a/keyboards/durgod/k320/base/keyboard.json b/keyboards/durgod/k320/base/keyboard.json index 89ea273baf..243f00e834 100644 --- a/keyboards/durgod/k320/base/keyboard.json +++ b/keyboards/durgod/k320/base/keyboard.json @@ -4,8 +4,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/dyz/dyz40/keyboard.json b/keyboards/dyz/dyz40/keyboard.json index 4916ec7ecd..ec8e4e8111 100644 --- a/keyboards/dyz/dyz40/keyboard.json +++ b/keyboards/dyz/dyz40/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/dyz/dyz60/keyboard.json b/keyboards/dyz/dyz60/keyboard.json index 824e23d709..6caeecd28c 100644 --- a/keyboards/dyz/dyz60/keyboard.json +++ b/keyboards/dyz/dyz60/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/dyz/dyz60_hs/keyboard.json b/keyboards/dyz/dyz60_hs/keyboard.json index 112b128577..3afa3fea23 100644 --- a/keyboards/dyz/dyz60_hs/keyboard.json +++ b/keyboards/dyz/dyz60_hs/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/dyz/dyz_tkl/keyboard.json b/keyboards/dyz/dyz_tkl/keyboard.json index 4d8bba1710..584e22fdd4 100644 --- a/keyboards/dyz/dyz_tkl/keyboard.json +++ b/keyboards/dyz/dyz_tkl/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/dyz/selka40/keyboard.json b/keyboards/dyz/selka40/keyboard.json index 4a8df19633..dc117b3b72 100644 --- a/keyboards/dyz/selka40/keyboard.json +++ b/keyboards/dyz/selka40/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/dyz/synthesis60/keyboard.json b/keyboards/dyz/synthesis60/keyboard.json index cdb4760381..704b87f007 100644 --- a/keyboards/dyz/synthesis60/keyboard.json +++ b/keyboards/dyz/synthesis60/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/dz60/keyboard.json b/keyboards/dz60/keyboard.json index 8a8e631f1b..52ad5484ae 100644 --- a/keyboards/dz60/keyboard.json +++ b/keyboards/dz60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "DZ60", "manufacturer": "KBDFans", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x445A", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/dztech/bocc/keyboard.json b/keyboards/dztech/bocc/keyboard.json index a6208b2bf7..7c2be5645f 100644 --- a/keyboards/dztech/bocc/keyboard.json +++ b/keyboards/dztech/bocc/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BOCC", "manufacturer": "DZTECH", - "url": "", "maintainer": "DZTECH", "usb": { "vid": "0x445A", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/dztech/duo_s/keyboard.json b/keyboards/dztech/duo_s/keyboard.json index 7bf8b0bfdd..512d4c3256 100644 --- a/keyboards/dztech/duo_s/keyboard.json +++ b/keyboards/dztech/duo_s/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "DUO-S", "manufacturer": "DZTECH", - "url": "", "maintainer": "moyi4681", "usb": { "vid": "0x445A", @@ -35,8 +34,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/dztech/dz60rgb/info.json b/keyboards/dztech/dz60rgb/info.json index 17439e3443..1bcc77c605 100644 --- a/keyboards/dztech/dz60rgb/info.json +++ b/keyboards/dztech/dz60rgb/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "DZ60RGB", "manufacturer": "DZTECH", - "url": "", "maintainer": "dztech", "usb": { "vid": "0x445A" diff --git a/keyboards/dztech/dz60rgb_ansi/info.json b/keyboards/dztech/dz60rgb_ansi/info.json index 12fefa5d87..dddbd47315 100644 --- a/keyboards/dztech/dz60rgb_ansi/info.json +++ b/keyboards/dztech/dz60rgb_ansi/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "DZ60RGB_ANSI", "manufacturer": "DZTECH", - "url": "", "maintainer": "dztech", "usb": { "vid": "0x445A" diff --git a/keyboards/dztech/dz60rgb_wkl/info.json b/keyboards/dztech/dz60rgb_wkl/info.json index ca43c1cbd7..a4dfb63c7a 100644 --- a/keyboards/dztech/dz60rgb_wkl/info.json +++ b/keyboards/dztech/dz60rgb_wkl/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "DZ60RGB_WKL", "manufacturer": "DZTECH", - "url": "", "maintainer": "dztech", "usb": { "vid": "0x445A" diff --git a/keyboards/dztech/dz60v2/keyboard.json b/keyboards/dztech/dz60v2/keyboard.json index 7714e4b7d2..4e0de8ae5c 100644 --- a/keyboards/dztech/dz60v2/keyboard.json +++ b/keyboards/dztech/dz60v2/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/dztech/dz64rgb/keyboard.json b/keyboards/dztech/dz64rgb/keyboard.json index ea22af59db..ef95b52400 100644 --- a/keyboards/dztech/dz64rgb/keyboard.json +++ b/keyboards/dztech/dz64rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "DZ64RGB", "manufacturer": "DZTECH", - "url": "", "maintainer": "moyi4681", "usb": { "vid": "0x445A", diff --git a/keyboards/dztech/dz65rgb/info.json b/keyboards/dztech/dz65rgb/info.json index d3a127251b..39e1242af4 100644 --- a/keyboards/dztech/dz65rgb/info.json +++ b/keyboards/dztech/dz65rgb/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "DZ65RGB", "manufacturer": "DZTECH", - "url": "", "maintainer": "dztech", "usb": { "vid": "0x445A" diff --git a/keyboards/dztech/dz65rgb/v1/keyboard.json b/keyboards/dztech/dz65rgb/v1/keyboard.json index 6dcc88b59e..32b830052d 100644 --- a/keyboards/dztech/dz65rgb/v1/keyboard.json +++ b/keyboards/dztech/dz65rgb/v1/keyboard.json @@ -46,8 +46,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/dztech/dz65rgb/v2/keyboard.json b/keyboards/dztech/dz65rgb/v2/keyboard.json index 16d38a3af5..bf7331e101 100644 --- a/keyboards/dztech/dz65rgb/v2/keyboard.json +++ b/keyboards/dztech/dz65rgb/v2/keyboard.json @@ -46,8 +46,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/dztech/dz96/keyboard.json b/keyboards/dztech/dz96/keyboard.json index ef2de26a70..0d37f09ff0 100644 --- a/keyboards/dztech/dz96/keyboard.json +++ b/keyboards/dztech/dz96/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "DZ96", "manufacturer": "DZTECH", - "url": "", "maintainer": "kb-elmo", "usb": { "vid": "0x445A", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/dztech/endless80/keyboard.json b/keyboards/dztech/endless80/keyboard.json index 9387b67ead..54ca7c12a7 100644 --- a/keyboards/dztech/endless80/keyboard.json +++ b/keyboards/dztech/endless80/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "endless80", "manufacturer": "dztech", - "url": "", "maintainer": "moyi4681", "usb": { "vid": "0x445A", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/dztech/mellow/keyboard.json b/keyboards/dztech/mellow/keyboard.json index 24cd11028c..565c2b0995 100644 --- a/keyboards/dztech/mellow/keyboard.json +++ b/keyboards/dztech/mellow/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/dztech/pluto/keyboard.json b/keyboards/dztech/pluto/keyboard.json index d64e941346..1e1b577293 100644 --- a/keyboards/dztech/pluto/keyboard.json +++ b/keyboards/dztech/pluto/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/dztech/tofu/ii/v1/keyboard.json b/keyboards/dztech/tofu/ii/v1/keyboard.json index 60ccc5ec9b..ca1d5608c1 100644 --- a/keyboards/dztech/tofu/ii/v1/keyboard.json +++ b/keyboards/dztech/tofu/ii/v1/keyboard.json @@ -3,8 +3,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/dztech/tofu/jr/v1/keyboard.json b/keyboards/dztech/tofu/jr/v1/keyboard.json index 12930f65d0..5eb20be00d 100644 --- a/keyboards/dztech/tofu/jr/v1/keyboard.json +++ b/keyboards/dztech/tofu/jr/v1/keyboard.json @@ -4,8 +4,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/dztech/tofu/jr/v2/keyboard.json b/keyboards/dztech/tofu/jr/v2/keyboard.json index 6a60565b22..d8de9b956f 100644 --- a/keyboards/dztech/tofu/jr/v2/keyboard.json +++ b/keyboards/dztech/tofu/jr/v2/keyboard.json @@ -4,8 +4,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/dztech/tofu60/keyboard.json b/keyboards/dztech/tofu60/keyboard.json index 149f04d46a..6e6a047733 100644 --- a/keyboards/dztech/tofu60/keyboard.json +++ b/keyboards/dztech/tofu60/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/e88/keyboard.json b/keyboards/e88/keyboard.json index 32ee42aefd..941eb42729 100644 --- a/keyboards/e88/keyboard.json +++ b/keyboards/e88/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "e88", "manufacturer": "Pink Labs", - "url": "", "maintainer": "2-n", "usb": { "vid": "0x4705", diff --git a/keyboards/ealdin/quadrant/keyboard.json b/keyboards/ealdin/quadrant/keyboard.json index 7a8bcf0db2..eafd9c57fe 100644 --- a/keyboards/ealdin/quadrant/keyboard.json +++ b/keyboards/ealdin/quadrant/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, "console": true, "encoder": true, "extrakey": true, diff --git a/keyboards/earth_rover/keyboard.json b/keyboards/earth_rover/keyboard.json index 0c760f612c..516585ca24 100644 --- a/keyboards/earth_rover/keyboard.json +++ b/keyboards/earth_rover/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/eason/aeroboard/keyboard.json b/keyboards/eason/aeroboard/keyboard.json index 3d8c2a6db6..1c15e600c4 100644 --- a/keyboards/eason/aeroboard/keyboard.json +++ b/keyboards/eason/aeroboard/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "AeroBoard", "manufacturer": "Eason", - "url": "", "maintainer": "EasonQian1", "usb": { "vid": "0x8954", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/eason/capsule65/keyboard.json b/keyboards/eason/capsule65/keyboard.json index 87b7b94568..cc33904c55 100644 --- a/keyboards/eason/capsule65/keyboard.json +++ b/keyboards/eason/capsule65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "capsule65", "manufacturer": "eason", - "url": "", "maintainer": "EasonQian1", "usb": { "vid": "0xF21E", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/eason/greatsword80/keyboard.json b/keyboards/eason/greatsword80/keyboard.json index 6500fac978..5f0daebd45 100644 --- a/keyboards/eason/greatsword80/keyboard.json +++ b/keyboards/eason/greatsword80/keyboard.json @@ -14,8 +14,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/eason/meow65/keyboard.json b/keyboards/eason/meow65/keyboard.json index 340a741040..013e7daf4b 100644 --- a/keyboards/eason/meow65/keyboard.json +++ b/keyboards/eason/meow65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Meow65", "manufacturer": "Eason", - "url": "", "maintainer": "Eason", "usb": { "vid": "0x68F4", @@ -11,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/eason/void65h/keyboard.json b/keyboards/eason/void65h/keyboard.json index 7b6a7fe2fb..006cdb28b8 100644 --- a/keyboards/eason/void65h/keyboard.json +++ b/keyboards/eason/void65h/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Void65h", "manufacturer": "Eason", - "url": "", "maintainer": "Eason", "usb": { "vid": "0x51D7", @@ -11,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ebastler/e80_1800/keyboard.json b/keyboards/ebastler/e80_1800/keyboard.json index dfb669e72e..5b409c7074 100644 --- a/keyboards/ebastler/e80_1800/keyboard.json +++ b/keyboards/ebastler/e80_1800/keyboard.json @@ -16,8 +16,6 @@ "extrakey": true, "backlight": true, "nkro": true, - "command": false, - "console": false, "mousekey": false }, "matrix_pins": { @@ -27,8 +25,7 @@ "backlight": { "breathing": true, "levels": 5, - "pin": "A9", - "on_state": 1 + "pin": "A9" }, "indicators": { "num_lock": "B6", diff --git a/keyboards/ebastler/isometria_75/rev1/keyboard.json b/keyboards/ebastler/isometria_75/rev1/keyboard.json index cf36d60df1..e7a6e01f3d 100644 --- a/keyboards/ebastler/isometria_75/rev1/keyboard.json +++ b/keyboards/ebastler/isometria_75/rev1/keyboard.json @@ -24,8 +24,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/eco/info.json b/keyboards/eco/info.json index 1bb5c79eb2..f62d91a01f 100644 --- a/keyboards/eco/info.json +++ b/keyboards/eco/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "The ECO Keyboard", "manufacturer": "Bishop Keyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x1337", diff --git a/keyboards/eco/rev1/keyboard.json b/keyboards/eco/rev1/keyboard.json index 1b3cb5f8df..e241774e81 100644 --- a/keyboards/eco/rev1/keyboard.json +++ b/keyboards/eco/rev1/keyboard.json @@ -11,7 +11,6 @@ "backlight": false, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "midi": true, "mousekey": false, diff --git a/keyboards/eco/rev2/keyboard.json b/keyboards/eco/rev2/keyboard.json index 8effdd85e5..ca8709a266 100644 --- a/keyboards/eco/rev2/keyboard.json +++ b/keyboards/eco/rev2/keyboard.json @@ -11,7 +11,6 @@ "backlight": false, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "midi": true, "mousekey": false, diff --git a/keyboards/edc40/keyboard.json b/keyboards/edc40/keyboard.json index 7ad2fdd3b8..33998f4747 100644 --- a/keyboards/edc40/keyboard.json +++ b/keyboards/edc40/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "edc40", "manufacturer": "OJ", - "url": "", "maintainer": "ojthetiny", "usb": { "vid": "0x4F4A", @@ -11,7 +10,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/edda/keyboard.json b/keyboards/edda/keyboard.json index 4a997abeac..a0f91429af 100644 --- a/keyboards/edda/keyboard.json +++ b/keyboards/edda/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/edi/standaside/keyboard.json b/keyboards/edi/standaside/keyboard.json index 410f8f693a..744f5fbe1e 100644 --- a/keyboards/edi/standaside/keyboard.json +++ b/keyboards/edi/standaside/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Stand Aside", "manufacturer": "Fate Everywhere", - "url": "", "maintainer": "fateeverywhere", "usb": { "vid": "0xF7E0", diff --git a/keyboards/eek/info.json b/keyboards/eek/info.json index 86ff284347..0e510e282a 100644 --- a/keyboards/eek/info.json +++ b/keyboards/eek/info.json @@ -13,7 +13,6 @@ "val": 150 }, "driver": "ws2812", - "led_flush_limit": 16, "max_brightness": 200 }, "features": { diff --git a/keyboards/efreet/keyboard.json b/keyboards/efreet/keyboard.json index 7dac78cc39..0e42253c47 100644 --- a/keyboards/efreet/keyboard.json +++ b/keyboards/efreet/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Efreet", "manufacturer": "Soran", - "url": "", "maintainer": "amberstarlight", "usb": { "vid": "0x534F", diff --git a/keyboards/ein_60/keyboard.json b/keyboards/ein_60/keyboard.json index a7902af490..b1e48f1747 100644 --- a/keyboards/ein_60/keyboard.json +++ b/keyboards/ein_60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ein_60", "manufacturer": "klackygears", - "url": "", "maintainer": "klackygears", "usb": { "vid": "0x4A53", @@ -13,7 +12,6 @@ "val": 150 }, "driver": "ws2812", - "led_flush_limit": 16, "max_brightness": 200 }, "rgblight": { diff --git a/keyboards/emajesty/eiri/keyboard.json b/keyboards/emajesty/eiri/keyboard.json index 6941bb921d..2ad711bf9e 100644 --- a/keyboards/emajesty/eiri/keyboard.json +++ b/keyboards/emajesty/eiri/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/emi20/keyboard.json b/keyboards/emi20/keyboard.json index 56f13af875..7a2b820549 100644 --- a/keyboards/emi20/keyboard.json +++ b/keyboards/emi20/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Emi20", "manufacturer": "Aquacylinder", - "url": "", "maintainer": "Aquacylinder", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/emptystring/nqg/keyboard.json b/keyboards/emptystring/nqg/keyboard.json index 96f9391dcc..17116704c7 100644 --- a/keyboards/emptystring/nqg/keyboard.json +++ b/keyboards/emptystring/nqg/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NQG", "manufacturer": "emptystring", - "url": "", "maintainer": "culturalsnow", "usb": { "vid": "0x0076", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": true diff --git a/keyboards/eniigmakeyboards/ek60/keyboard.json b/keyboards/eniigmakeyboards/ek60/keyboard.json index 6446dbce34..97f3469cd8 100644 --- a/keyboards/eniigmakeyboards/ek60/keyboard.json +++ b/keyboards/eniigmakeyboards/ek60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "EK60", "manufacturer": "Eniigma Keyboards", - "url": "", "maintainer": "adamws", "usb": { "vid": "0x454B", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/eniigmakeyboards/ek65/keyboard.json b/keyboards/eniigmakeyboards/ek65/keyboard.json index fa6ad3566a..60fdc4db81 100644 --- a/keyboards/eniigmakeyboards/ek65/keyboard.json +++ b/keyboards/eniigmakeyboards/ek65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "EK65", "manufacturer": "Eniigma Keyboards", - "url": "", "maintainer": "adamws", "usb": { "vid": "0x454B", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/eniigmakeyboards/ek87/keyboard.json b/keyboards/eniigmakeyboards/ek87/keyboard.json index 900a74a4b6..c1ac8623b1 100644 --- a/keyboards/eniigmakeyboards/ek87/keyboard.json +++ b/keyboards/eniigmakeyboards/ek87/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "EK87", "manufacturer": "Eniigma Keyboards", - "url": "", "maintainer": "adamws", "usb": { "vid": "0x454B", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/enviousdesign/60f/keyboard.json b/keyboards/enviousdesign/60f/keyboard.json index c163ca5d6d..738211674e 100644 --- a/keyboards/enviousdesign/60f/keyboard.json +++ b/keyboards/enviousdesign/60f/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/enviousdesign/65m/keyboard.json b/keyboards/enviousdesign/65m/keyboard.json index 2328932462..e0661dc9fa 100644 --- a/keyboards/enviousdesign/65m/keyboard.json +++ b/keyboards/enviousdesign/65m/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/enviousdesign/commissions/mini1800/keyboard.json b/keyboards/enviousdesign/commissions/mini1800/keyboard.json index 9303e7af23..5eb78225a0 100644 --- a/keyboards/enviousdesign/commissions/mini1800/keyboard.json +++ b/keyboards/enviousdesign/commissions/mini1800/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/enviousdesign/delirium/rev0/keyboard.json b/keyboards/enviousdesign/delirium/rev0/keyboard.json index f1eb3dc59b..75ff24a9ef 100644 --- a/keyboards/enviousdesign/delirium/rev0/keyboard.json +++ b/keyboards/enviousdesign/delirium/rev0/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/enviousdesign/delirium/rev1/keyboard.json b/keyboards/enviousdesign/delirium/rev1/keyboard.json index e548d02814..83001140bb 100644 --- a/keyboards/enviousdesign/delirium/rev1/keyboard.json +++ b/keyboards/enviousdesign/delirium/rev1/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/enviousdesign/delirium/rgb/keyboard.json b/keyboards/enviousdesign/delirium/rgb/keyboard.json index b6e0bb0e0c..4ef1251e11 100644 --- a/keyboards/enviousdesign/delirium/rgb/keyboard.json +++ b/keyboards/enviousdesign/delirium/rgb/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/enviousdesign/mcro/rev1/keyboard.json b/keyboards/enviousdesign/mcro/rev1/keyboard.json index c7e4c38765..6e846f9621 100644 --- a/keyboards/enviousdesign/mcro/rev1/keyboard.json +++ b/keyboards/enviousdesign/mcro/rev1/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/epomaker/tide65/keyboard.json b/keyboards/epomaker/tide65/keyboard.json index 60f1b46f70..7a384f180f 100644 --- a/keyboards/epomaker/tide65/keyboard.json +++ b/keyboards/epomaker/tide65/keyboard.json @@ -141,7 +141,6 @@ {"matrix": [4, 14], "x": 224, "y": 64, "flags": 4} ] }, - "url": "", "usb": { "device_version": "0.0.1", "force_nkro": true, diff --git a/keyboards/era/divine/keyboard.json b/keyboards/era/divine/keyboard.json index d02241da78..83da9f0854 100644 --- a/keyboards/era/divine/keyboard.json +++ b/keyboards/era/divine/keyboard.json @@ -14,8 +14,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -31,7 +29,6 @@ "rows": ["GP11", "GP10", "GP9", "GP8", "GP4"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0002", diff --git a/keyboards/era/era65/keyboard.json b/keyboards/era/era65/keyboard.json index d5fd612767..2939418d72 100644 --- a/keyboards/era/era65/keyboard.json +++ b/keyboards/era/era65/keyboard.json @@ -18,8 +18,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -32,7 +30,6 @@ "rows": ["GP1", "GP2", "GP4", "GP10", "GP11"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.4", "pid": "0x0001", diff --git a/keyboards/era/linx3/fave65s/keyboard.json b/keyboards/era/linx3/fave65s/keyboard.json index 87f4fdf513..af44df9850 100644 --- a/keyboards/era/linx3/fave65s/keyboard.json +++ b/keyboards/era/linx3/fave65s/keyboard.json @@ -109,7 +109,6 @@ ], "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0011", diff --git a/keyboards/era/linx3/n86/keyboard.json b/keyboards/era/linx3/n86/keyboard.json index c0b8b5525a..354a358470 100644 --- a/keyboards/era/linx3/n86/keyboard.json +++ b/keyboards/era/linx3/n86/keyboard.json @@ -161,7 +161,6 @@ ], "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0008", diff --git a/keyboards/era/linx3/n87/keyboard.json b/keyboards/era/linx3/n87/keyboard.json index 548a37fadd..5a03a5cbc5 100644 --- a/keyboards/era/linx3/n87/keyboard.json +++ b/keyboards/era/linx3/n87/keyboard.json @@ -162,7 +162,6 @@ ], "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0009", diff --git a/keyboards/era/linx3/n8x/keyboard.json b/keyboards/era/linx3/n8x/keyboard.json index ae0d608ffa..c018874bd1 100644 --- a/keyboards/era/linx3/n8x/keyboard.json +++ b/keyboards/era/linx3/n8x/keyboard.json @@ -29,7 +29,6 @@ "rows": ["GP4", "GP5", "GP6", "GP7", "GP10", "GP9"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0007", diff --git a/keyboards/era/sirind/brick65s/keyboard.json b/keyboards/era/sirind/brick65s/keyboard.json index 5d6768a93c..489b0da323 100644 --- a/keyboards/era/sirind/brick65s/keyboard.json +++ b/keyboards/era/sirind/brick65s/keyboard.json @@ -27,7 +27,6 @@ ], "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0012", diff --git a/keyboards/era/sirind/chickpad/keyboard.json b/keyboards/era/sirind/chickpad/keyboard.json index fe76df006d..c662d8241a 100644 --- a/keyboards/era/sirind/chickpad/keyboard.json +++ b/keyboards/era/sirind/chickpad/keyboard.json @@ -88,7 +88,6 @@ ], "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0015", diff --git a/keyboards/era/sirind/klein_hs/keyboard.json b/keyboards/era/sirind/klein_hs/keyboard.json index 6d677f6748..01395c3af1 100644 --- a/keyboards/era/sirind/klein_hs/keyboard.json +++ b/keyboards/era/sirind/klein_hs/keyboard.json @@ -28,7 +28,6 @@ "rows": ["GP18", "GP19", "GP20", "GP21", "GP14", "GP5", "GP6", "GP4", "GP13", "GP12"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0004", diff --git a/keyboards/era/sirind/klein_sd/keyboard.json b/keyboards/era/sirind/klein_sd/keyboard.json index 62b8f78865..b2fbe33290 100644 --- a/keyboards/era/sirind/klein_sd/keyboard.json +++ b/keyboards/era/sirind/klein_sd/keyboard.json @@ -149,7 +149,6 @@ ], "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0005", diff --git a/keyboards/era/sirind/tomak/keyboard.json b/keyboards/era/sirind/tomak/keyboard.json index cfd933bfe6..9f4993614b 100644 --- a/keyboards/era/sirind/tomak/keyboard.json +++ b/keyboards/era/sirind/tomak/keyboard.json @@ -196,7 +196,6 @@ } } }, - "url": "", "usb": { "device_version": "1.0.2", "pid": "0x0006", diff --git a/keyboards/era/sirind/tomak79h/keyboard.json b/keyboards/era/sirind/tomak79h/keyboard.json index 216250f850..d1764bb668 100644 --- a/keyboards/era/sirind/tomak79h/keyboard.json +++ b/keyboards/era/sirind/tomak79h/keyboard.json @@ -197,7 +197,6 @@ } } }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0014", diff --git a/keyboards/era/sirind/tomak79s/keyboard.json b/keyboards/era/sirind/tomak79s/keyboard.json index 9011a359ad..2e68ad788d 100644 --- a/keyboards/era/sirind/tomak79s/keyboard.json +++ b/keyboards/era/sirind/tomak79s/keyboard.json @@ -203,7 +203,6 @@ } } }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0013", diff --git a/keyboards/esca/getawayvan/keyboard.json b/keyboards/esca/getawayvan/keyboard.json index 6105e5850d..404ccd19d2 100644 --- a/keyboards/esca/getawayvan/keyboard.json +++ b/keyboards/esca/getawayvan/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "GetawayVan", "manufacturer": "esca", - "url": "", "maintainer": "esca", "usb": { "vid": "0xE5CA", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/esca/getawayvan_f042/keyboard.json b/keyboards/esca/getawayvan_f042/keyboard.json index 6b934e16c7..97fe0022dc 100644 --- a/keyboards/esca/getawayvan_f042/keyboard.json +++ b/keyboards/esca/getawayvan_f042/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "GetawayVan", "manufacturer": "esca", - "url": "", "maintainer": "esca", "usb": { "vid": "0xE5CA", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/eternal_keypad/keyboard.json b/keyboards/eternal_keypad/keyboard.json index f50f235c98..1951c7fa09 100644 --- a/keyboards/eternal_keypad/keyboard.json +++ b/keyboards/eternal_keypad/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/etiennecollin/wave/keyboard.json b/keyboards/etiennecollin/wave/keyboard.json index 272cbdd002..0174312280 100644 --- a/keyboards/etiennecollin/wave/keyboard.json +++ b/keyboards/etiennecollin/wave/keyboard.json @@ -19,8 +19,6 @@ "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/eve/meteor/keyboard.json b/keyboards/eve/meteor/keyboard.json index a8136496f0..f012bb6520 100644 --- a/keyboards/eve/meteor/keyboard.json +++ b/keyboards/eve/meteor/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Meteor", "manufacturer": "EVE", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4556", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/evil80/keyboard.json b/keyboards/evil80/keyboard.json index 9610718b34..1c64076611 100644 --- a/keyboards/evil80/keyboard.json +++ b/keyboards/evil80/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Evil80", "manufacturer": "Evil", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": true diff --git a/keyboards/evolv/keyboard.json b/keyboards/evolv/keyboard.json index 8373bbb536..8a3b581ead 100644 --- a/keyboards/evolv/keyboard.json +++ b/keyboards/evolv/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Evolv75", "manufacturer": "NathanAlpha", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x7865", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/evyd13/atom47/rev2/keyboard.json b/keyboards/evyd13/atom47/rev2/keyboard.json index 6466c1b7b8..8b1af5ede6 100644 --- a/keyboards/evyd13/atom47/rev2/keyboard.json +++ b/keyboards/evyd13/atom47/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Atom47 rev2", "manufacturer": "Evyd13", - "url": "", "maintainer": "evyd13", "usb": { "vid": "0x4705", diff --git a/keyboards/evyd13/atom47/rev3/keyboard.json b/keyboards/evyd13/atom47/rev3/keyboard.json index 009c3ef534..e2c6a1e1ba 100644 --- a/keyboards/evyd13/atom47/rev3/keyboard.json +++ b/keyboards/evyd13/atom47/rev3/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Atom47 rev3", "manufacturer": "Evyd13", - "url": "", "maintainer": "evyd13", "usb": { "vid": "0x4705", diff --git a/keyboards/evyd13/atom47/rev4/keyboard.json b/keyboards/evyd13/atom47/rev4/keyboard.json index cea416e1a6..9a5d7b1ce4 100644 --- a/keyboards/evyd13/atom47/rev4/keyboard.json +++ b/keyboards/evyd13/atom47/rev4/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Atom47 rev4", "manufacturer": "Evyd13", - "url": "", "maintainer": "evyd13", "usb": { "vid": "0x4705", diff --git a/keyboards/evyd13/atom47/rev5/keyboard.json b/keyboards/evyd13/atom47/rev5/keyboard.json index 074d34ab43..86ff90c19c 100644 --- a/keyboards/evyd13/atom47/rev5/keyboard.json +++ b/keyboards/evyd13/atom47/rev5/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Atom47 rev5", "manufacturer": "Evyd13", - "url": "", "maintainer": "evyd13", "usb": { "vid": "0x4705", diff --git a/keyboards/evyd13/eon65/keyboard.json b/keyboards/evyd13/eon65/keyboard.json index 05506e0ea8..328e0e4885 100644 --- a/keyboards/evyd13/eon65/keyboard.json +++ b/keyboards/evyd13/eon65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Eon65", "manufacturer": "Evyd13", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4705", diff --git a/keyboards/evyd13/eon75/keyboard.json b/keyboards/evyd13/eon75/keyboard.json index fe6ee01832..d91e1267fb 100644 --- a/keyboards/evyd13/eon75/keyboard.json +++ b/keyboards/evyd13/eon75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Eon75", "manufacturer": "Evyd13", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4705", diff --git a/keyboards/evyd13/eon87/keyboard.json b/keyboards/evyd13/eon87/keyboard.json index a0d73d442e..1e5bbbda88 100644 --- a/keyboards/evyd13/eon87/keyboard.json +++ b/keyboards/evyd13/eon87/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Eon87", "manufacturer": "Evyd13", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4705", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/evyd13/eon95/keyboard.json b/keyboards/evyd13/eon95/keyboard.json index 20be437ea1..4da4cad0d1 100644 --- a/keyboards/evyd13/eon95/keyboard.json +++ b/keyboards/evyd13/eon95/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Eon95", "manufacturer": "Evyd13", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4705", diff --git a/keyboards/evyd13/fin_pad/keyboard.json b/keyboards/evyd13/fin_pad/keyboard.json index 01b24ccfd0..1720eed7db 100644 --- a/keyboards/evyd13/fin_pad/keyboard.json +++ b/keyboards/evyd13/fin_pad/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -21,7 +19,6 @@ "ortho_6x4" ], "processor": "atmega32u2", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0xA6E2", diff --git a/keyboards/evyd13/gh80_1800/keyboard.json b/keyboards/evyd13/gh80_1800/keyboard.json index 4fb513cc3c..ed214fbb24 100644 --- a/keyboards/evyd13/gh80_1800/keyboard.json +++ b/keyboards/evyd13/gh80_1800/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/evyd13/gh80_3700/keyboard.json b/keyboards/evyd13/gh80_3700/keyboard.json index a647f46118..7b5ce62909 100644 --- a/keyboards/evyd13/gh80_3700/keyboard.json +++ b/keyboards/evyd13/gh80_3700/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/evyd13/gud70/keyboard.json b/keyboards/evyd13/gud70/keyboard.json index 00211d6167..6f2a787e69 100644 --- a/keyboards/evyd13/gud70/keyboard.json +++ b/keyboards/evyd13/gud70/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/evyd13/minitomic/keyboard.json b/keyboards/evyd13/minitomic/keyboard.json index 7a8d6d8c23..97bc0dd050 100644 --- a/keyboards/evyd13/minitomic/keyboard.json +++ b/keyboards/evyd13/minitomic/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Minitomic", "manufacturer": "Evyd13", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4705", diff --git a/keyboards/evyd13/mx5160/keyboard.json b/keyboards/evyd13/mx5160/keyboard.json index b50f6130ce..452d3427d1 100644 --- a/keyboards/evyd13/mx5160/keyboard.json +++ b/keyboards/evyd13/mx5160/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/evyd13/nt210/keyboard.json b/keyboards/evyd13/nt210/keyboard.json index 1c9fab2fcc..cbca2c6758 100644 --- a/keyboards/evyd13/nt210/keyboard.json +++ b/keyboards/evyd13/nt210/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/evyd13/nt650/keyboard.json b/keyboards/evyd13/nt650/keyboard.json index 6f2910b630..fe0380fa79 100644 --- a/keyboards/evyd13/nt650/keyboard.json +++ b/keyboards/evyd13/nt650/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -22,7 +20,6 @@ "rows": ["F7", "D6", "D4", "F1", "D5", "F0", "D3", "D2"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0xD5DF", diff --git a/keyboards/evyd13/nt660/keyboard.json b/keyboards/evyd13/nt660/keyboard.json index 142e9f2920..a0a330ae40 100644 --- a/keyboards/evyd13/nt660/keyboard.json +++ b/keyboards/evyd13/nt660/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "nt660", "manufacturer": "Evyd13", - "url": "", "maintainer": "evyd13", "usb": { "vid": "0x4705", diff --git a/keyboards/evyd13/nt750/keyboard.json b/keyboards/evyd13/nt750/keyboard.json index 03c76f1040..8be6bc827e 100644 --- a/keyboards/evyd13/nt750/keyboard.json +++ b/keyboards/evyd13/nt750/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/evyd13/nt980/keyboard.json b/keyboards/evyd13/nt980/keyboard.json index 65ba93d73d..42c05e25c6 100644 --- a/keyboards/evyd13/nt980/keyboard.json +++ b/keyboards/evyd13/nt980/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "nt980", "manufacturer": "Evyd13", - "url": "", "maintainer": "evyd13", "usb": { "vid": "0x4705", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/evyd13/omrontkl/keyboard.json b/keyboards/evyd13/omrontkl/keyboard.json index 1ea340acaa..ee79748e6a 100644 --- a/keyboards/evyd13/omrontkl/keyboard.json +++ b/keyboards/evyd13/omrontkl/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "OmronTKL", "manufacturer": "Evyd13", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4705", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/evyd13/plain60/keyboard.json b/keyboards/evyd13/plain60/keyboard.json index ce08a523ed..15c4c5b7f8 100644 --- a/keyboards/evyd13/plain60/keyboard.json +++ b/keyboards/evyd13/plain60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Plain60", "manufacturer": "Evyd13", - "url": "", "maintainer": "evyd13", "usb": { "vid": "0x4705", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/evyd13/quackfire/keyboard.json b/keyboards/evyd13/quackfire/keyboard.json index 85c2ae81fb..42a11ea776 100644 --- a/keyboards/evyd13/quackfire/keyboard.json +++ b/keyboards/evyd13/quackfire/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/evyd13/solheim68/keyboard.json b/keyboards/evyd13/solheim68/keyboard.json index 9e04b9caab..98c617f959 100644 --- a/keyboards/evyd13/solheim68/keyboard.json +++ b/keyboards/evyd13/solheim68/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/evyd13/ta65/keyboard.json b/keyboards/evyd13/ta65/keyboard.json index 1f58de0200..3f51a25299 100644 --- a/keyboards/evyd13/ta65/keyboard.json +++ b/keyboards/evyd13/ta65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ta-65", "manufacturer": "Evyd13", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4705", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "encoder": true, "extrakey": true, diff --git a/keyboards/evyd13/wonderland/keyboard.json b/keyboards/evyd13/wonderland/keyboard.json index 526416fd71..b15ad66f41 100644 --- a/keyboards/evyd13/wonderland/keyboard.json +++ b/keyboards/evyd13/wonderland/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Wonderland", "manufacturer": "Evyd13", - "url": "", "maintainer": "evyd13", "usb": { "vid": "0x4705", diff --git a/keyboards/exclusive/e65/keyboard.json b/keyboards/exclusive/e65/keyboard.json index 9735155abe..2be0dc57d8 100644 --- a/keyboards/exclusive/e65/keyboard.json +++ b/keyboards/exclusive/e65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "E6.5", "manufacturer": "Exclusive / E-Team", - "url": "", "maintainer": "masterzen", "usb": { "vid": "0x4558", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/exclusive/e6_rgb/keyboard.json b/keyboards/exclusive/e6_rgb/keyboard.json index 401bee9aba..52d77dfcaa 100644 --- a/keyboards/exclusive/e6_rgb/keyboard.json +++ b/keyboards/exclusive/e6_rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "E6 RGB", "manufacturer": "astro", - "url": "", "maintainer": "yulei", "usb": { "vid": "0x4154", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/exclusive/e6v2/le/keyboard.json b/keyboards/exclusive/e6v2/le/keyboard.json index e6d551126e..a2a460d7de 100644 --- a/keyboards/exclusive/e6v2/le/keyboard.json +++ b/keyboards/exclusive/e6v2/le/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "E6-V2 LE", "manufacturer": "Exclusive / E-Team", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/exclusive/e6v2/le_bmc/keyboard.json b/keyboards/exclusive/e6v2/le_bmc/keyboard.json index 09d99d670f..1e36043e5a 100644 --- a/keyboards/exclusive/e6v2/le_bmc/keyboard.json +++ b/keyboards/exclusive/e6v2/le_bmc/keyboard.json @@ -11,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/exclusive/e6v2/oe/keyboard.json b/keyboards/exclusive/e6v2/oe/keyboard.json index 587205d2df..29730487c9 100644 --- a/keyboards/exclusive/e6v2/oe/keyboard.json +++ b/keyboards/exclusive/e6v2/oe/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "E6-V2 OE", "manufacturer": "Exclusive / E-Team", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/exclusive/e6v2/oe_bmc/keyboard.json b/keyboards/exclusive/e6v2/oe_bmc/keyboard.json index 7ff3099249..f287417943 100644 --- a/keyboards/exclusive/e6v2/oe_bmc/keyboard.json +++ b/keyboards/exclusive/e6v2/oe_bmc/keyboard.json @@ -11,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/exclusive/e7v1/keyboard.json b/keyboards/exclusive/e7v1/keyboard.json index ac0eb5549a..04cd7ff0ae 100644 --- a/keyboards/exclusive/e7v1/keyboard.json +++ b/keyboards/exclusive/e7v1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "E7-V1", "manufacturer": "Exclusive / E-Team", - "url": "", "maintainer": "masterzen", "usb": { "vid": "0x4558", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/exclusive/e7v1se/keyboard.json b/keyboards/exclusive/e7v1se/keyboard.json index 4cd9484ae4..8154725075 100644 --- a/keyboards/exclusive/e7v1se/keyboard.json +++ b/keyboards/exclusive/e7v1se/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/exclusive/e85/hotswap/keyboard.json b/keyboards/exclusive/e85/hotswap/keyboard.json index 7fcd61c843..72e578c04e 100644 --- a/keyboards/exclusive/e85/hotswap/keyboard.json +++ b/keyboards/exclusive/e85/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "E8.5 Hotswap", "manufacturer": "Exclusive", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4558", diff --git a/keyboards/exclusive/e85/soldered/keyboard.json b/keyboards/exclusive/e85/soldered/keyboard.json index dfd6d18826..eaffa08933 100644 --- a/keyboards/exclusive/e85/soldered/keyboard.json +++ b/keyboards/exclusive/e85/soldered/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "E8.5 Soldered", "manufacturer": "Exclusive", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4558", diff --git a/keyboards/exent/keyboard.json b/keyboards/exent/keyboard.json index 1fcd11084b..5f3e058af0 100644 --- a/keyboards/exent/keyboard.json +++ b/keyboards/exent/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Exent", "manufacturer": "Quadcube", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5143", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/eyeohdesigns/babyv/keyboard.json b/keyboards/eyeohdesigns/babyv/keyboard.json index 1197533189..d9bf06190f 100644 --- a/keyboards/eyeohdesigns/babyv/keyboard.json +++ b/keyboards/eyeohdesigns/babyv/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "babyv", "manufacturer": "Eye Oh Designs", - "url": "", "maintainer": "eye oh designs", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/eyeohdesigns/theboulevard/keyboard.json b/keyboards/eyeohdesigns/theboulevard/keyboard.json index 94007dd2c5..78a2e94128 100644 --- a/keyboards/eyeohdesigns/theboulevard/keyboard.json +++ b/keyboards/eyeohdesigns/theboulevard/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "the boulevard", "manufacturer": "eye oh designs", - "url": "", "maintainer": "eye oh designs", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/facew/keyboard.json b/keyboards/facew/keyboard.json index a8a7543b7a..b8d22bdf96 100644 --- a/keyboards/facew/keyboard.json +++ b/keyboards/facew/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "FaceW", "manufacturer": "SPRiT", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x20A0", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/falsonix/fx19/keyboard.json b/keyboards/falsonix/fx19/keyboard.json index 4ef4730a5d..64b34d0caf 100644 --- a/keyboards/falsonix/fx19/keyboard.json +++ b/keyboards/falsonix/fx19/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -31,7 +29,6 @@ "rows": ["F0", "F1", "F4", "F5", "F6"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0000", diff --git a/keyboards/fatotesa/keyboard.json b/keyboards/fatotesa/keyboard.json index ba6fc08d0c..3013e8b812 100644 --- a/keyboards/fatotesa/keyboard.json +++ b/keyboards/fatotesa/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, @@ -42,7 +40,6 @@ "cols": ["F5", "F6", "F7", "B1", "B3", "B2", "B6", null], "rows": ["D4", "C6", "D7", "E6", "B4", "B5"] }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0000", diff --git a/keyboards/fc660c/keyboard.json b/keyboards/fc660c/keyboard.json index 6c573fef88..6486bf0587 100644 --- a/keyboards/fc660c/keyboard.json +++ b/keyboards/fc660c/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "FC660C", "manufacturer": "Hasu", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4853", diff --git a/keyboards/fc980c/keyboard.json b/keyboards/fc980c/keyboard.json index 9944dd3899..b22747ba15 100644 --- a/keyboards/fc980c/keyboard.json +++ b/keyboards/fc980c/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "FC980C", "manufacturer": "Hasu", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4853", diff --git a/keyboards/fearherbs1/blue_team_pad/keyboard.json b/keyboards/fearherbs1/blue_team_pad/keyboard.json index b47b049b45..5091fc0c31 100644 --- a/keyboards/fearherbs1/blue_team_pad/keyboard.json +++ b/keyboards/fearherbs1/blue_team_pad/keyboard.json @@ -16,7 +16,6 @@ "mousekey": true, "extrakey": true, "console": true, - "command": false, "nkro": true, "oled": true }, diff --git a/keyboards/feker/ik75/keyboard.json b/keyboards/feker/ik75/keyboard.json index 8f5614098c..03b86e5d8b 100644 --- a/keyboards/feker/ik75/keyboard.json +++ b/keyboards/feker/ik75/keyboard.json @@ -62,8 +62,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/ffkeebs/puca/keyboard.json b/keyboards/ffkeebs/puca/keyboard.json index 2abd0cfc36..e79032593a 100644 --- a/keyboards/ffkeebs/puca/keyboard.json +++ b/keyboards/ffkeebs/puca/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/ffkeebs/siris/keyboard.json b/keyboards/ffkeebs/siris/keyboard.json index 86531b6d01..d8bcb4df36 100644 --- a/keyboards/ffkeebs/siris/keyboard.json +++ b/keyboards/ffkeebs/siris/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/flashquark/horizon_z/keyboard.json b/keyboards/flashquark/horizon_z/keyboard.json index 0fe14e7c60..8e3ba47e4d 100755 --- a/keyboards/flashquark/horizon_z/keyboard.json +++ b/keyboards/flashquark/horizon_z/keyboard.json @@ -7,8 +7,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/flehrad/numbrero/keyboard.json b/keyboards/flehrad/numbrero/keyboard.json index f72b06ca7c..ac21bb0fbb 100644 --- a/keyboards/flehrad/numbrero/keyboard.json +++ b/keyboards/flehrad/numbrero/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Numbrero", "manufacturer": "Flehrad", - "url": "", "maintainer": "Flehrad", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/flehrad/snagpad/keyboard.json b/keyboards/flehrad/snagpad/keyboard.json index 1b2a2c4ae1..d1a2f3ddee 100644 --- a/keyboards/flehrad/snagpad/keyboard.json +++ b/keyboards/flehrad/snagpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Snagpad", "manufacturer": "Flehrad", - "url": "", "maintainer": "Flehrad", "usb": { "vid": "0x4443", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/flehrad/tradestation/keyboard.json b/keyboards/flehrad/tradestation/keyboard.json index 757325ceaf..b753ce2f8e 100644 --- a/keyboards/flehrad/tradestation/keyboard.json +++ b/keyboards/flehrad/tradestation/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Trade Station", "manufacturer": "Flehrad", - "url": "", "maintainer": "Flehrad", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/fleuron/keyboard.json b/keyboards/fleuron/keyboard.json index 5cd7b7d8b2..c3f3c35fe1 100644 --- a/keyboards/fleuron/keyboard.json +++ b/keyboards/fleuron/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/fluorite/keyboard.json b/keyboards/fluorite/keyboard.json index 37e74c387c..17824c36b7 100644 --- a/keyboards/fluorite/keyboard.json +++ b/keyboards/fluorite/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "fluorite", "manufacturer": "ihotsuno", - "url": "", "maintainer": "ihotsuno, qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/flx/lodestone/keyboard.json b/keyboards/flx/lodestone/keyboard.json index 3a70655f2a..8ed4e39956 100644 --- a/keyboards/flx/lodestone/keyboard.json +++ b/keyboards/flx/lodestone/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/flx/virgo/keyboard.json b/keyboards/flx/virgo/keyboard.json index 996425282d..7641e3f2ea 100644 --- a/keyboards/flx/virgo/keyboard.json +++ b/keyboards/flx/virgo/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Virgo", "manufacturer": "FLX", - "url": "", "maintainer": "mechmerlin", "usb": { "vid": "0x4658", @@ -14,8 +13,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/flxlb/zplit/keyboard.json b/keyboards/flxlb/zplit/keyboard.json index cd16ef7a15..fdbe34fc7e 100644 --- a/keyboards/flxlb/zplit/keyboard.json +++ b/keyboards/flxlb/zplit/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/foostan/cornelius/keyboard.json b/keyboards/foostan/cornelius/keyboard.json index 75cf098c4d..5f80d597e7 100644 --- a/keyboards/foostan/cornelius/keyboard.json +++ b/keyboards/foostan/cornelius/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Cornelius", "manufacturer": "Yushakobo", - "url": "", "maintainer": "foostan", "usb": { "vid": "0x3265", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/forever65/keyboard.json b/keyboards/forever65/keyboard.json index 9f128c1177..17866fa6e7 100644 --- a/keyboards/forever65/keyboard.json +++ b/keyboards/forever65/keyboard.json @@ -16,8 +16,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/fortitude60/rev1/keyboard.json b/keyboards/fortitude60/rev1/keyboard.json index 4ad8a723b7..3970a78404 100644 --- a/keyboards/fortitude60/rev1/keyboard.json +++ b/keyboards/fortitude60/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Fortitude60", "manufacturer": "Pekaso", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xCB10", diff --git a/keyboards/foxlab/key65/hotswap/keyboard.json b/keyboards/foxlab/key65/hotswap/keyboard.json index b21893fa88..e6c74011d3 100644 --- a/keyboards/foxlab/key65/hotswap/keyboard.json +++ b/keyboards/foxlab/key65/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Key 65 Hotswap", "manufacturer": "Fox Lab", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x464C", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/foxlab/key65/universal/keyboard.json b/keyboards/foxlab/key65/universal/keyboard.json index daaa1b37b1..6a70f6e679 100644 --- a/keyboards/foxlab/key65/universal/keyboard.json +++ b/keyboards/foxlab/key65/universal/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Key 65 Universal", "manufacturer": "Fox Lab", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x464C", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/foxlab/leaf60/hotswap/keyboard.json b/keyboards/foxlab/leaf60/hotswap/keyboard.json index 55639853e9..dedd885ef7 100644 --- a/keyboards/foxlab/leaf60/hotswap/keyboard.json +++ b/keyboards/foxlab/leaf60/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Leaf 60 Hotswap", "manufacturer": "Fox Lab", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x464C", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/foxlab/leaf60/universal/keyboard.json b/keyboards/foxlab/leaf60/universal/keyboard.json index 93bfe45cce..8a756aa070 100644 --- a/keyboards/foxlab/leaf60/universal/keyboard.json +++ b/keyboards/foxlab/leaf60/universal/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Leaf 60 Universal", "manufacturer": "Fox Lab", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x464C", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/foxlab/time80/keyboard.json b/keyboards/foxlab/time80/keyboard.json index 9902ed770d..5bdda54ffd 100644 --- a/keyboards/foxlab/time80/keyboard.json +++ b/keyboards/foxlab/time80/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Time80", "manufacturer": "Fox Lab", - "url": "", "maintainer": "lukelex", "usb": { "vid": "0x464C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/foxlab/time_re/hotswap/keyboard.json b/keyboards/foxlab/time_re/hotswap/keyboard.json index cfef3317f2..aeef957547 100644 --- a/keyboards/foxlab/time_re/hotswap/keyboard.json +++ b/keyboards/foxlab/time_re/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Time 80 Reforged", "manufacturer": "Fox Lab", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x464C", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/foxlab/time_re/universal/keyboard.json b/keyboards/foxlab/time_re/universal/keyboard.json index b53364a589..e04ab3978e 100644 --- a/keyboards/foxlab/time_re/universal/keyboard.json +++ b/keyboards/foxlab/time_re/universal/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Time 80 Reforged", "manufacturer": "Fox Lab", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x464C", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/fr4/southpaw75/keyboard.json b/keyboards/fr4/southpaw75/keyboard.json index 47fb954bf9..dc919b2ee4 100644 --- a/keyboards/fr4/southpaw75/keyboard.json +++ b/keyboards/fr4/southpaw75/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/fr4/unix60/keyboard.json b/keyboards/fr4/unix60/keyboard.json index a6c3d0cb6a..97da97dd0e 100644 --- a/keyboards/fr4/unix60/keyboard.json +++ b/keyboards/fr4/unix60/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/free_willy/keyboard.json b/keyboards/free_willy/keyboard.json index 512d56516a..815f5808f5 100644 --- a/keyboards/free_willy/keyboard.json +++ b/keyboards/free_willy/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/friedrich/keyboard.json b/keyboards/friedrich/keyboard.json index d5dd68e0bc..0489b57cea 100644 --- a/keyboards/friedrich/keyboard.json +++ b/keyboards/friedrich/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/frobiac/blackbowl/keyboard.json b/keyboards/frobiac/blackbowl/keyboard.json index 8a4aed1948..704a8b0d62 100644 --- a/keyboards/frobiac/blackbowl/keyboard.json +++ b/keyboards/frobiac/blackbowl/keyboard.json @@ -8,8 +8,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": false, - "command": false, - "console": false, "dynamic_macro": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/frobiac/blackflat/keyboard.json b/keyboards/frobiac/blackflat/keyboard.json index 086d90d8f8..b8c8622ac8 100644 --- a/keyboards/frobiac/blackflat/keyboard.json +++ b/keyboards/frobiac/blackflat/keyboard.json @@ -8,8 +8,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": false, - "command": false, - "console": false, "dynamic_macro": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/frobiac/hypernano/keyboard.json b/keyboards/frobiac/hypernano/keyboard.json index 403beed952..ec7d850fd3 100644 --- a/keyboards/frobiac/hypernano/keyboard.json +++ b/keyboards/frobiac/hypernano/keyboard.json @@ -8,8 +8,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": false, - "command": false, - "console": false, "dynamic_macro": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/frobiac/redtilt/keyboard.json b/keyboards/frobiac/redtilt/keyboard.json index f3cbd96e1c..5a6d746f35 100644 --- a/keyboards/frobiac/redtilt/keyboard.json +++ b/keyboards/frobiac/redtilt/keyboard.json @@ -8,8 +8,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": false, - "command": false, - "console": false, "dynamic_macro": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/frooastboard/nano/keyboard.json b/keyboards/frooastboard/nano/keyboard.json index 5d7783145e..45e3dc75d6 100644 --- a/keyboards/frooastboard/nano/keyboard.json +++ b/keyboards/frooastboard/nano/keyboard.json @@ -17,8 +17,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": true, diff --git a/keyboards/frooastboard/walnut/keyboard.json b/keyboards/frooastboard/walnut/keyboard.json index 4387452d38..f1958c04a2 100644 --- a/keyboards/frooastboard/walnut/keyboard.json +++ b/keyboards/frooastboard/walnut/keyboard.json @@ -8,8 +8,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": true, diff --git a/keyboards/fs_streampad/keyboard.json b/keyboards/fs_streampad/keyboard.json index 5adefff443..33604f70aa 100644 --- a/keyboards/fs_streampad/keyboard.json +++ b/keyboards/fs_streampad/keyboard.json @@ -17,8 +17,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -76,9 +74,6 @@ "pixel_flow": true, "pixel_rain": true }, - "default": { - "animation": "cycle_left_right" - }, "sleep": true, "layout": [ {"matrix": [0, 0], "flags": 4, "x": 0, "y": 0 }, diff --git a/keyboards/ft/mars65/keyboard.json b/keyboards/ft/mars65/keyboard.json index 3b6f5ec8a9..b8206d29be 100644 --- a/keyboards/ft/mars65/keyboard.json +++ b/keyboards/ft/mars65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Mars 6.5", "manufacturer": "FT", - "url": "", "maintainer": "wonderbeel", "usb": { "vid": "0x20A0", @@ -14,8 +13,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/ft/mars80/keyboard.json b/keyboards/ft/mars80/keyboard.json index 1d5e53dcbe..38261ad547 100644 --- a/keyboards/ft/mars80/keyboard.json +++ b/keyboards/ft/mars80/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Mars 8.0", "manufacturer": "FT", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x20A0", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/function96/v1/keyboard.json b/keyboards/function96/v1/keyboard.json index 945042b284..7a1367a30c 100644 --- a/keyboards/function96/v1/keyboard.json +++ b/keyboards/function96/v1/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/function96/v2/keyboard.json b/keyboards/function96/v2/keyboard.json index 21d677d9a5..bbb508ec91 100644 --- a/keyboards/function96/v2/keyboard.json +++ b/keyboards/function96/v2/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/fungo/rev1/keyboard.json b/keyboards/fungo/rev1/keyboard.json index 0970a027c8..0b0abec8e7 100644 --- a/keyboards/fungo/rev1/keyboard.json +++ b/keyboards/fungo/rev1/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "key_lock": true, "mousekey": true, diff --git a/keyboards/funky40/keyboard.json b/keyboards/funky40/keyboard.json index d76b9eee2e..0658fc4974 100644 --- a/keyboards/funky40/keyboard.json +++ b/keyboards/funky40/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Funky40", "manufacturer": "TheFourthCow", - "url": "", "maintainer": "TheFourthCow", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/gami_studio/lex60/keyboard.json b/keyboards/gami_studio/lex60/keyboard.json index be1715c844..9ddc1513f3 100644 --- a/keyboards/gami_studio/lex60/keyboard.json +++ b/keyboards/gami_studio/lex60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Lex60", "manufacturer": "Evyd13", - "url": "", "maintainer": "GamiStudio", "usb": { "vid": "0x7353", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/gboards/butterstick/keyboard.json b/keyboards/gboards/butterstick/keyboard.json index 59d703925b..b1401eb87c 100644 --- a/keyboards/gboards/butterstick/keyboard.json +++ b/keyboards/gboards/butterstick/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Butter Stick", "manufacturer": "g Heavy Industries", - "url": "", "maintainer": "germ", "usb": { "vid": "0xFEED", @@ -14,7 +13,6 @@ }, "features": { "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/gboards/gergoplex/keyboard.json b/keyboards/gboards/gergoplex/keyboard.json index cf1e451392..111f7b8f2c 100644 --- a/keyboards/gboards/gergoplex/keyboard.json +++ b/keyboards/gboards/gergoplex/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "GergoPlex", "manufacturer": "g Heavy Industries", - "url": "", "maintainer": "germ", "usb": { "vid": "0x6B0A", diff --git a/keyboards/geekboards/macropad_v2/keyboard.json b/keyboards/geekboards/macropad_v2/keyboard.json index 54d779570a..a34912aee3 100644 --- a/keyboards/geekboards/macropad_v2/keyboard.json +++ b/keyboards/geekboards/macropad_v2/keyboard.json @@ -47,7 +47,6 @@ }, "default": { "animation": "cycle_up_down", - "sat": 255, "speed": 30, "val": 192 }, @@ -58,8 +57,6 @@ "bootloader": "stm32-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/geekboards/tester/keyboard.json b/keyboards/geekboards/tester/keyboard.json index 743e5e2392..2b85961df8 100644 --- a/keyboards/geekboards/tester/keyboard.json +++ b/keyboards/geekboards/tester/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Tester", "manufacturer": "Geekboards", - "url": "", "maintainer": "moyi4681", "usb": { "vid": "0xFEED", @@ -55,8 +54,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/geistmaschine/geist/keyboard.json b/keyboards/geistmaschine/geist/keyboard.json index 079dd8d6d9..4d1b29c67f 100644 --- a/keyboards/geistmaschine/geist/keyboard.json +++ b/keyboards/geistmaschine/geist/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/geistmaschine/macropod/keyboard.json b/keyboards/geistmaschine/macropod/keyboard.json index 333e7c0a50..f5803778dd 100644 --- a/keyboards/geistmaschine/macropod/keyboard.json +++ b/keyboards/geistmaschine/macropod/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/generic_panda/panda65_01/keyboard.json b/keyboards/generic_panda/panda65_01/keyboard.json index 098f3df1c0..1ba0ec134b 100644 --- a/keyboards/generic_panda/panda65_01/keyboard.json +++ b/keyboards/generic_panda/panda65_01/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/genone/eclipse_65/keyboard.json b/keyboards/genone/eclipse_65/keyboard.json index aeb2d8973c..0b7a27e910 100644 --- a/keyboards/genone/eclipse_65/keyboard.json +++ b/keyboards/genone/eclipse_65/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/genone/g1_65/keyboard.json b/keyboards/genone/g1_65/keyboard.json index 367bdfe7bb..3ee452f9d1 100644 --- a/keyboards/genone/g1_65/keyboard.json +++ b/keyboards/genone/g1_65/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/geonworks/ee_at/keyboard.json b/keyboards/geonworks/ee_at/keyboard.json index 803e0d3640..c901901ab0 100644 --- a/keyboards/geonworks/ee_at/keyboard.json +++ b/keyboards/geonworks/ee_at/keyboard.json @@ -9,8 +9,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/geonworks/frogmini/fmh/keyboard.json b/keyboards/geonworks/frogmini/fmh/keyboard.json index 414aa18e12..fd42773042 100644 --- a/keyboards/geonworks/frogmini/fmh/keyboard.json +++ b/keyboards/geonworks/frogmini/fmh/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/geonworks/frogmini/fms/keyboard.json b/keyboards/geonworks/frogmini/fms/keyboard.json index c34765288b..4c582c2bd8 100644 --- a/keyboards/geonworks/frogmini/fms/keyboard.json +++ b/keyboards/geonworks/frogmini/fms/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/geonworks/w1_at/keyboard.json b/keyboards/geonworks/w1_at/keyboard.json index 8b7991c03d..240463b9c4 100644 --- a/keyboards/geonworks/w1_at/keyboard.json +++ b/keyboards/geonworks/w1_at/keyboard.json @@ -9,8 +9,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ggkeyboards/genesis/hotswap/keyboard.json b/keyboards/ggkeyboards/genesis/hotswap/keyboard.json index 5cd4f07716..cb5e94cf38 100644 --- a/keyboards/ggkeyboards/genesis/hotswap/keyboard.json +++ b/keyboards/ggkeyboards/genesis/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Genesis Hotswap", "manufacturer": "GG Keyboards", - "url": "", "maintainer": "Spooknik", "usb": { "vid": "0xBB00", diff --git a/keyboards/ggkeyboards/genesis/solder/keyboard.json b/keyboards/ggkeyboards/genesis/solder/keyboard.json index 485be430e5..15fcc2334b 100644 --- a/keyboards/ggkeyboards/genesis/solder/keyboard.json +++ b/keyboards/ggkeyboards/genesis/solder/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Genesis Solder", "manufacturer": "GG Keyboards", - "url": "", "maintainer": "Spooknik", "usb": { "vid": "0xBB00", diff --git a/keyboards/gh60/revc/keyboard.json b/keyboards/gh60/revc/keyboard.json index 4f90f2540c..bfb81ad093 100644 --- a/keyboards/gh60/revc/keyboard.json +++ b/keyboards/gh60/revc/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "GH60 Rev C", "manufacturer": "geekhack", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4335", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/gh60/satan/keyboard.json b/keyboards/gh60/satan/keyboard.json index e3f2685297..864e5fa90d 100644 --- a/keyboards/gh60/satan/keyboard.json +++ b/keyboards/gh60/satan/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "GH60 Satan", "manufacturer": "SATAN", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4335", diff --git a/keyboards/gh60/v1p3/keyboard.json b/keyboards/gh60/v1p3/keyboard.json index 18ac7608bb..38496bb9de 100644 --- a/keyboards/gh60/v1p3/keyboard.json +++ b/keyboards/gh60/v1p3/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "GH60 v1.3", "manufacturer": "Unknown", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/gh80_3000/keyboard.json b/keyboards/gh80_3000/keyboard.json index c88f5c8232..cf3c346486 100644 --- a/keyboards/gh80_3000/keyboard.json +++ b/keyboards/gh80_3000/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "GH80-3000", "manufacturer": "farmakon", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/ghs/jem/info.json b/keyboards/ghs/jem/info.json index b90655647d..543dc041a7 100644 --- a/keyboards/ghs/jem/info.json +++ b/keyboards/ghs/jem/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "GHS.JEM", "manufacturer": "Gone Hacking Studio", - "url": "", "maintainer": "ramonimbao", "usb": { "vid": "0x0645", @@ -11,8 +10,6 @@ "processor": "atmega32u4", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "rgblight": true, @@ -29,8 +26,6 @@ "rgblight": { "led_count": 22, "hue_steps": 10, - "saturation_steps": 17, - "brightness_steps": 17, "animations": { "breathing": true, "rainbow_mood": true, diff --git a/keyboards/ghs/rar/keyboard.json b/keyboards/ghs/rar/keyboard.json index 96184abe6a..75b835a3e2 100644 --- a/keyboards/ghs/rar/keyboard.json +++ b/keyboards/ghs/rar/keyboard.json @@ -32,8 +32,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/ghs/xls/keyboard.json b/keyboards/ghs/xls/keyboard.json index f062f32af8..64ce7cbb91 100644 --- a/keyboards/ghs/xls/keyboard.json +++ b/keyboards/ghs/xls/keyboard.json @@ -5,8 +5,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "encoder": true, @@ -19,7 +17,6 @@ "indicators": { "num_lock": "B0" }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0002", diff --git a/keyboards/giabalanai/keyboard.json b/keyboards/giabalanai/keyboard.json index ae43139dad..2e2357fe4c 100644 --- a/keyboards/giabalanai/keyboard.json +++ b/keyboards/giabalanai/keyboard.json @@ -34,10 +34,8 @@ "extrakey": true, "encoder": true, "bootmagic": false, - "console": false, "mousekey": false, "nkro": false, - "command": false, "backlight": false }, "build": { diff --git a/keyboards/gizmo_engineering/gk6/keyboard.json b/keyboards/gizmo_engineering/gk6/keyboard.json index d68b356d9c..45e5bf0706 100644 --- a/keyboards/gizmo_engineering/gk6/keyboard.json +++ b/keyboards/gizmo_engineering/gk6/keyboard.json @@ -29,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/gkeyboard/gkb_m16/keyboard.json b/keyboards/gkeyboard/gkb_m16/keyboard.json index 1f1fe50a67..968e154598 100644 --- a/keyboards/gkeyboard/gkb_m16/keyboard.json +++ b/keyboards/gkeyboard/gkb_m16/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "GKB-M16", "manufacturer": "gkeyboard", - "url": "", "maintainer": "gkeyboard", "usb": { "vid": "0x474B", @@ -31,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/gkeyboard/gpad8_2r/keyboard.json b/keyboards/gkeyboard/gpad8_2r/keyboard.json index 6c9a779b05..95645a53fc 100644 --- a/keyboards/gkeyboard/gpad8_2r/keyboard.json +++ b/keyboards/gkeyboard/gpad8_2r/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/gkeyboard/greatpad/keyboard.json b/keyboards/gkeyboard/greatpad/keyboard.json index 62edd1aef3..d578111703 100644 --- a/keyboards/gkeyboard/greatpad/keyboard.json +++ b/keyboards/gkeyboard/greatpad/keyboard.json @@ -15,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/gl516/xr63gl/keyboard.json b/keyboards/gl516/xr63gl/keyboard.json index ddeb425462..e36b0622d6 100644 --- a/keyboards/gl516/xr63gl/keyboard.json +++ b/keyboards/gl516/xr63gl/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["GP26", "GP27", "GP28", "GP29", "GP0", "GP3", "GP4", "GP2", "GP1"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/glenpickle/chimera_ergo/keyboard.json b/keyboards/glenpickle/chimera_ergo/keyboard.json index 038498fd10..d2b4d93b9d 100644 --- a/keyboards/glenpickle/chimera_ergo/keyboard.json +++ b/keyboards/glenpickle/chimera_ergo/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Chimera Ergo", "manufacturer": "Unknown", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/glenpickle/chimera_ls/keyboard.json b/keyboards/glenpickle/chimera_ls/keyboard.json index b0d6a52912..23c870c74d 100644 --- a/keyboards/glenpickle/chimera_ls/keyboard.json +++ b/keyboards/glenpickle/chimera_ls/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Chimera Lets Split", "manufacturer": "Unknown", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/gmmk/gmmk2/p65/ansi/keyboard.json b/keyboards/gmmk/gmmk2/p65/ansi/keyboard.json index a5c4c92552..70c308da5f 100644 --- a/keyboards/gmmk/gmmk2/p65/ansi/keyboard.json +++ b/keyboards/gmmk/gmmk2/p65/ansi/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/gmmk/gmmk2/p65/iso/keyboard.json b/keyboards/gmmk/gmmk2/p65/iso/keyboard.json index a4576c8c7f..9240268b4f 100644 --- a/keyboards/gmmk/gmmk2/p65/iso/keyboard.json +++ b/keyboards/gmmk/gmmk2/p65/iso/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/gmmk/gmmk2/p96/ansi/keyboard.json b/keyboards/gmmk/gmmk2/p96/ansi/keyboard.json index 8fd81ba1a0..0646be8c88 100644 --- a/keyboards/gmmk/gmmk2/p96/ansi/keyboard.json +++ b/keyboards/gmmk/gmmk2/p96/ansi/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/gmmk/gmmk2/p96/iso/keyboard.json b/keyboards/gmmk/gmmk2/p96/iso/keyboard.json index 040b6f9c6f..679881a94b 100644 --- a/keyboards/gmmk/gmmk2/p96/iso/keyboard.json +++ b/keyboards/gmmk/gmmk2/p96/iso/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/gmmk/pro/rev1/ansi/keyboard.json b/keyboards/gmmk/pro/rev1/ansi/keyboard.json index 867f7e1d02..fbb9107d16 100644 --- a/keyboards/gmmk/pro/rev1/ansi/keyboard.json +++ b/keyboards/gmmk/pro/rev1/ansi/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/gmmk/pro/rev1/iso/keyboard.json b/keyboards/gmmk/pro/rev1/iso/keyboard.json index 6eabec96fe..7506f8952d 100644 --- a/keyboards/gmmk/pro/rev1/iso/keyboard.json +++ b/keyboards/gmmk/pro/rev1/iso/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/gmmk/pro/rev2/ansi/keyboard.json b/keyboards/gmmk/pro/rev2/ansi/keyboard.json index 21bc7df7fb..4e0fdfccd9 100644 --- a/keyboards/gmmk/pro/rev2/ansi/keyboard.json +++ b/keyboards/gmmk/pro/rev2/ansi/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/gmmk/pro/rev2/iso/keyboard.json b/keyboards/gmmk/pro/rev2/iso/keyboard.json index 83d1fd3028..01db9dc22f 100644 --- a/keyboards/gmmk/pro/rev2/iso/keyboard.json +++ b/keyboards/gmmk/pro/rev2/iso/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/gon/nerd60/keyboard.json b/keyboards/gon/nerd60/keyboard.json index 590b3f3d9e..01cbaf3cd0 100644 --- a/keyboards/gon/nerd60/keyboard.json +++ b/keyboards/gon/nerd60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NerD 60", "manufacturer": "GON", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4E45", diff --git a/keyboards/gon/nerdtkl/keyboard.json b/keyboards/gon/nerdtkl/keyboard.json index ccf13ec325..ae9db2553b 100644 --- a/keyboards/gon/nerdtkl/keyboard.json +++ b/keyboards/gon/nerdtkl/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NerD TKL", "manufacturer": "GON", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4E45", diff --git a/keyboards/gopolar/gg86/keyboard.json b/keyboards/gopolar/gg86/keyboard.json index b704582aa6..a9944beea9 100644 --- a/keyboards/gopolar/gg86/keyboard.json +++ b/keyboards/gopolar/gg86/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "GG86 Tai-Chi", "manufacturer": "Gopolar", - "url": "", "maintainer": "Gopolar", "usb": { "vid": "0x0007", diff --git a/keyboards/gorthage_truck/keyboard.json b/keyboards/gorthage_truck/keyboard.json index 1a0a364f96..4af39afca3 100644 --- a/keyboards/gorthage_truck/keyboard.json +++ b/keyboards/gorthage_truck/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/gowla/keyboard.json b/keyboards/gowla/keyboard.json index 0f64cad79b..f4f0b96838 100644 --- a/keyboards/gowla/keyboard.json +++ b/keyboards/gowla/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/gray_studio/aero75/keyboard.json b/keyboards/gray_studio/aero75/keyboard.json index c0ede794c2..e510c160e8 100644 --- a/keyboards/gray_studio/aero75/keyboard.json +++ b/keyboards/gray_studio/aero75/keyboard.json @@ -39,8 +39,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/gray_studio/apollo80/keyboard.json b/keyboards/gray_studio/apollo80/keyboard.json index f3425aa20d..6211f78447 100644 --- a/keyboards/gray_studio/apollo80/keyboard.json +++ b/keyboards/gray_studio/apollo80/keyboard.json @@ -35,8 +35,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/gray_studio/cod67/keyboard.json b/keyboards/gray_studio/cod67/keyboard.json index fa946d9b33..e0a71c6703 100644 --- a/keyboards/gray_studio/cod67/keyboard.json +++ b/keyboards/gray_studio/cod67/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "COD67", "manufacturer": "Graystudio", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4753", diff --git a/keyboards/gray_studio/hb85/keyboard.json b/keyboards/gray_studio/hb85/keyboard.json index 61387a2709..9d182a458e 100644 --- a/keyboards/gray_studio/hb85/keyboard.json +++ b/keyboards/gray_studio/hb85/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "HB85", "manufacturer": "Gray Studio", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4753", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/gray_studio/space65/keyboard.json b/keyboards/gray_studio/space65/keyboard.json index ffe825ff4c..3ca6a306cd 100644 --- a/keyboards/gray_studio/space65/keyboard.json +++ b/keyboards/gray_studio/space65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Space65", "manufacturer": "Graystudio", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4753", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/gray_studio/space65r3/keyboard.json b/keyboards/gray_studio/space65r3/keyboard.json index bdf3624c58..ab2bac62f9 100644 --- a/keyboards/gray_studio/space65r3/keyboard.json +++ b/keyboards/gray_studio/space65r3/keyboard.json @@ -39,8 +39,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/gray_studio/think65/hotswap/keyboard.json b/keyboards/gray_studio/think65/hotswap/keyboard.json index c2dba58190..a38f648eca 100644 --- a/keyboards/gray_studio/think65/hotswap/keyboard.json +++ b/keyboards/gray_studio/think65/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Think6.5\u00b0 Hotswap", "manufacturer": "Graystudio", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4753", diff --git a/keyboards/gray_studio/think65/solder/keyboard.json b/keyboards/gray_studio/think65/solder/keyboard.json index 09096a854e..283516b60a 100644 --- a/keyboards/gray_studio/think65/solder/keyboard.json +++ b/keyboards/gray_studio/think65/solder/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Think6.5\u00b0", "manufacturer": "Graystudio", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4753", diff --git a/keyboards/gray_studio/think65v3/keyboard.json b/keyboards/gray_studio/think65v3/keyboard.json index 0c6b8e7938..201e271b33 100644 --- a/keyboards/gray_studio/think65v3/keyboard.json +++ b/keyboards/gray_studio/think65v3/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/gregandcin/teaqueen/keyboard.json b/keyboards/gregandcin/teaqueen/keyboard.json index 871c34587d..bfdd395a7e 100644 --- a/keyboards/gregandcin/teaqueen/keyboard.json +++ b/keyboards/gregandcin/teaqueen/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/grid600/press/keyboard.json b/keyboards/grid600/press/keyboard.json index 74c3e7aad1..e5006d99f0 100644 --- a/keyboards/grid600/press/keyboard.json +++ b/keyboards/grid600/press/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "PRESS", "manufacturer": "Grid", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/gummykey/keyboard.json b/keyboards/gummykey/keyboard.json index bb7001438d..a16e2e4a1f 100644 --- a/keyboards/gummykey/keyboard.json +++ b/keyboards/gummykey/keyboard.json @@ -5,8 +5,6 @@ "maintainer": "Gumorr", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/gvalchca/ga150/keyboard.json b/keyboards/gvalchca/ga150/keyboard.json index 38028799fa..fbaa777499 100644 --- a/keyboards/gvalchca/ga150/keyboard.json +++ b/keyboards/gvalchca/ga150/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "GA15.0", "manufacturer": "Gvalchca", - "url": "", "maintainer": "Gvalchca", "usb": { "vid": "0x6776", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/gvalchca/spaccboard/keyboard.json b/keyboards/gvalchca/spaccboard/keyboard.json index ad03737fd5..783584aa85 100644 --- a/keyboards/gvalchca/spaccboard/keyboard.json +++ b/keyboards/gvalchca/spaccboard/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/h0oni/deskpad/keyboard.json b/keyboards/h0oni/deskpad/keyboard.json index d7ad53cd43..ac7cb8ca67 100644 --- a/keyboards/h0oni/deskpad/keyboard.json +++ b/keyboards/h0oni/deskpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Deskpad", "manufacturer": "Hydrogen", - "url": "", "maintainer": "Hydrogen BD", "usb": { "vid": "0x4D53", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/h0oni/hotduck/keyboard.json b/keyboards/h0oni/hotduck/keyboard.json index bdb2386021..55cd18762f 100644 --- a/keyboards/h0oni/hotduck/keyboard.json +++ b/keyboards/h0oni/hotduck/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "hotDuck", "manufacturer": "h0oni", - "url": "", "maintainer": "h0oni", "usb": { "vid": "0x4D53", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/hackpad/keyboard.json b/keyboards/hackpad/keyboard.json index 0a77c9320c..60a750691a 100644 --- a/keyboards/hackpad/keyboard.json +++ b/keyboards/hackpad/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/hadron/info.json b/keyboards/hadron/info.json index 1d25e18f30..1268c24a10 100644 --- a/keyboards/hadron/info.json +++ b/keyboards/hadron/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Hadron", "manufacturer": "ishtob", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFB30", diff --git a/keyboards/halokeys/elemental75/keyboard.json b/keyboards/halokeys/elemental75/keyboard.json index 866916b69b..a5ff54fccb 100644 --- a/keyboards/halokeys/elemental75/keyboard.json +++ b/keyboards/halokeys/elemental75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Elemental75", "manufacturer": "Halokeys", - "url": "", "maintainer": "shamit05", "usb": { "vid": "0xEA0B", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/han60/keyboard.json b/keyboards/han60/keyboard.json index 41d33b1ba8..243dd9bff2 100644 --- a/keyboards/han60/keyboard.json +++ b/keyboards/han60/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/hand88/keyboard.json b/keyboards/hand88/keyboard.json index cb8a320aaf..f32eef4d62 100755 --- a/keyboards/hand88/keyboard.json +++ b/keyboards/hand88/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/108key_trackpoint/keyboard.json b/keyboards/handwired/108key_trackpoint/keyboard.json index 94acb1a26c..0e8e1a0963 100644 --- a/keyboards/handwired/108key_trackpoint/keyboard.json +++ b/keyboards/handwired/108key_trackpoint/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "108Key-TrackPoint", "manufacturer": "QMK", - "url": "", "maintainer": "mkem114", "usb": { "vid": "0x1234", diff --git a/keyboards/handwired/10k/keyboard.json b/keyboards/handwired/10k/keyboard.json index a3293601e3..b1373f1fb3 100644 --- a/keyboards/handwired/10k/keyboard.json +++ b/keyboards/handwired/10k/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false diff --git a/keyboards/handwired/2x5keypad/keyboard.json b/keyboards/handwired/2x5keypad/keyboard.json index 0b146f165b..fbf1f478ba 100644 --- a/keyboards/handwired/2x5keypad/keyboard.json +++ b/keyboards/handwired/2x5keypad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "2x5keypad", "manufacturer": "Jonathan Cameron", - "url": "", "maintainer": "jmcameron", "usb": { "vid": "0xFEED", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/3dfoxc/keyboard.json b/keyboards/handwired/3dfoxc/keyboard.json index 7675acd73b..1475d52ab4 100644 --- a/keyboards/handwired/3dfoxc/keyboard.json +++ b/keyboards/handwired/3dfoxc/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "3dfoxc", "manufacturer": "dlgoodr", - "url": "", "maintainer": "dlgoodr", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/3dortho14u/rev1/keyboard.json b/keyboards/handwired/3dortho14u/rev1/keyboard.json index 63773d405f..5941c1792f 100644 --- a/keyboards/handwired/3dortho14u/rev1/keyboard.json +++ b/keyboards/handwired/3dortho14u/rev1/keyboard.json @@ -1,14 +1,12 @@ { "manufacturer": "xia0", "keyboard_name": "3dortho14u", - "url": "", "maintainer": "xia0", "processor": "atmega32u4", "bootloader": "atmel-dfu", "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/3dortho14u/rev2/keyboard.json b/keyboards/handwired/3dortho14u/rev2/keyboard.json index 9e048d643d..3c1cdde353 100644 --- a/keyboards/handwired/3dortho14u/rev2/keyboard.json +++ b/keyboards/handwired/3dortho14u/rev2/keyboard.json @@ -1,14 +1,12 @@ { "manufacturer": "xia0", "keyboard_name": "3dortho14u", - "url": "", "maintainer": "xia0", "processor": "atmega32u4", "bootloader": "atmel-dfu", "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/3dp660/keyboard.json b/keyboards/handwired/3dp660/keyboard.json index c1c4c13e7e..5b26aaecc6 100644 --- a/keyboards/handwired/3dp660/keyboard.json +++ b/keyboards/handwired/3dp660/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "3dp660", "manufacturer": "gooberpsycho", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x676F", diff --git a/keyboards/handwired/3dp660_oled/keyboard.json b/keyboards/handwired/3dp660_oled/keyboard.json index ef863b3b52..cb19d2ab80 100644 --- a/keyboards/handwired/3dp660_oled/keyboard.json +++ b/keyboards/handwired/3dp660_oled/keyboard.json @@ -6,7 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, @@ -22,7 +21,6 @@ "rows": ["D5", "B0", "B5", "B4", "E6", "D7", "C6", "D4", "D2", "D3"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x3661", diff --git a/keyboards/handwired/412_64/keyboard.json b/keyboards/handwired/412_64/keyboard.json index c0f27dcb91..f80611178e 100644 --- a/keyboards/handwired/412_64/keyboard.json +++ b/keyboards/handwired/412_64/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "412-64 Model 00", "manufacturer": "EDI/SCI", - "url": "", "maintainer": "fateeverywhere", "usb": { "vid": "0xF7E0", diff --git a/keyboards/handwired/42/keyboard.json b/keyboards/handwired/42/keyboard.json index 45801b7773..7dbb5827df 100644 --- a/keyboards/handwired/42/keyboard.json +++ b/keyboards/handwired/42/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "42", "manufacturer": "nglgzz", - "url": "", "maintainer": "nglgzz", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/6key/keyboard.json b/keyboards/handwired/6key/keyboard.json index 7883c1e784..53a8e50193 100644 --- a/keyboards/handwired/6key/keyboard.json +++ b/keyboards/handwired/6key/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/6macro/keyboard.json b/keyboards/handwired/6macro/keyboard.json index 702008de34..7aa7311806 100644 --- a/keyboards/handwired/6macro/keyboard.json +++ b/keyboards/handwired/6macro/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "6macro", "manufacturer": "joaofbmaia", - "url": "", "maintainer": "joaofbmaia", "usb": { "vid": "0xFEED", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/handwired/acacia/keyboard.json b/keyboards/handwired/acacia/keyboard.json index d761764727..16f614d795 100644 --- a/keyboards/handwired/acacia/keyboard.json +++ b/keyboards/handwired/acacia/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/aek64/keyboard.json b/keyboards/handwired/aek64/keyboard.json index a06ed6decc..0a57e17927 100644 --- a/keyboards/handwired/aek64/keyboard.json +++ b/keyboards/handwired/aek64/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "AEK64", "manufacturer": "4sStylZ and others makers", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/aim65/keyboard.json b/keyboards/handwired/aim65/keyboard.json index 3f026a91fa..393a2b9803 100644 --- a/keyboards/handwired/aim65/keyboard.json +++ b/keyboards/handwired/aim65/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/alcor_dactyl/keyboard.json b/keyboards/handwired/alcor_dactyl/keyboard.json index b38d39bfcc..46f23c944b 100644 --- a/keyboards/handwired/alcor_dactyl/keyboard.json +++ b/keyboards/handwired/alcor_dactyl/keyboard.json @@ -4,15 +4,12 @@ "maintainer": "rocketstrong", "bootloader": "rp2040", "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0000", "vid": "0xFEED" }, "features": { - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/handwired/amigopunk/keyboard.json b/keyboards/handwired/amigopunk/keyboard.json index e8e45d2b99..816dbb344d 100644 --- a/keyboards/handwired/amigopunk/keyboard.json +++ b/keyboards/handwired/amigopunk/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/angel/keyboard.json b/keyboards/handwired/angel/keyboard.json index 6a4b40bb21..6f2fe16589 100644 --- a/keyboards/handwired/angel/keyboard.json +++ b/keyboards/handwired/angel/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/aplx2/keyboard.json b/keyboards/handwired/aplx2/keyboard.json index 6a9d7130bd..36e00fa1bf 100644 --- a/keyboards/handwired/aplx2/keyboard.json +++ b/keyboards/handwired/aplx2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Aplx2", "manufacturer": "Aplyard", - "url": "", "maintainer": "Aplyard", "usb": { "vid": "0xE0E0", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/aranck/keyboard.json b/keyboards/handwired/aranck/keyboard.json index 435d6da696..ebc2203675 100644 --- a/keyboards/handwired/aranck/keyboard.json +++ b/keyboards/handwired/aranck/keyboard.json @@ -11,8 +11,6 @@ "features": { "audio": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/handwired/arrow_pad/keyboard.json b/keyboards/handwired/arrow_pad/keyboard.json index 237c1f0749..f70645fe2a 100644 --- a/keyboards/handwired/arrow_pad/keyboard.json +++ b/keyboards/handwired/arrow_pad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "GoldPad", "manufacturer": "Nobody", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/atreus50/keyboard.json b/keyboards/handwired/atreus50/keyboard.json index 961d1959b0..cedc231964 100644 --- a/keyboards/handwired/atreus50/keyboard.json +++ b/keyboards/handwired/atreus50/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Atreus50", "manufacturer": "Hexwire", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xBB80", @@ -30,7 +29,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/axon/keyboard.json b/keyboards/handwired/axon/keyboard.json index 007f90fbc8..82b97bca84 100644 --- a/keyboards/handwired/axon/keyboard.json +++ b/keyboards/handwired/axon/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/baredev/rev1/keyboard.json b/keyboards/handwired/baredev/rev1/keyboard.json index 470b926bb4..3a753bd740 100644 --- a/keyboards/handwired/baredev/rev1/keyboard.json +++ b/keyboards/handwired/baredev/rev1/keyboard.json @@ -24,8 +24,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/bdn9_ble/keyboard.json b/keyboards/handwired/bdn9_ble/keyboard.json index 20f020504c..27ed008f43 100644 --- a/keyboards/handwired/bdn9_ble/keyboard.json +++ b/keyboards/handwired/bdn9_ble/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BDN9-BLE", "manufacturer": "KeyPCB/Keebio", - "url": "", "maintainer": "merlin04", "usb": { "vid": "0xCB10", diff --git a/keyboards/handwired/bigmac/keyboard.json b/keyboards/handwired/bigmac/keyboard.json index 8eff62a7ea..40592658a1 100644 --- a/keyboards/handwired/bigmac/keyboard.json +++ b/keyboards/handwired/bigmac/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BigMac", "manufacturer": "Taylore101", - "url": "", "maintainer": "Taylore101", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/bolek/keyboard.json b/keyboards/handwired/bolek/keyboard.json index 68fe7958bf..7ce99e73b7 100644 --- a/keyboards/handwired/bolek/keyboard.json +++ b/keyboards/handwired/bolek/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/boss566y/redragon_vara/keyboard.json b/keyboards/handwired/boss566y/redragon_vara/keyboard.json index b75caa6544..bdcfb5b008 100644 --- a/keyboards/handwired/boss566y/redragon_vara/keyboard.json +++ b/keyboards/handwired/boss566y/redragon_vara/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Redragon Vara", "manufacturer": "PH", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5048", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/brain/keyboard.json b/keyboards/handwired/brain/keyboard.json index c5f8c3682c..2efa27d712 100644 --- a/keyboards/handwired/brain/keyboard.json +++ b/keyboards/handwired/brain/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Brain", "manufacturer": "Klackygears", - "url": "", "maintainer": "Klackygears", "usb": { "vid": "0x4A53", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/handwired/bstk100/keyboard.json b/keyboards/handwired/bstk100/keyboard.json index 0fc255f9c4..f505b75831 100644 --- a/keyboards/handwired/bstk100/keyboard.json +++ b/keyboards/handwired/bstk100/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/cans12er/keyboard.json b/keyboards/handwired/cans12er/keyboard.json index 9d08706423..a1ecaa9f6e 100644 --- a/keyboards/handwired/cans12er/keyboard.json +++ b/keyboards/handwired/cans12er/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Cans12er", "manufacturer": "Can", - "url": "", "maintainer": "canbaytok", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/chiron/keyboard.json b/keyboards/handwired/chiron/keyboard.json index 1685a9d477..024132396a 100644 --- a/keyboards/handwired/chiron/keyboard.json +++ b/keyboards/handwired/chiron/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Chiron", "manufacturer": "Mike Hix", - "url": "", "maintainer": "musl", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "mousekey": true, "nkro": false, diff --git a/keyboards/handwired/ck4x4/keyboard.json b/keyboards/handwired/ck4x4/keyboard.json index 642408cc0e..717820f9fc 100644 --- a/keyboards/handwired/ck4x4/keyboard.json +++ b/keyboards/handwired/ck4x4/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "CK4x4", "manufacturer": "QMK", - "url": "", "maintainer": "awkannan", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/cmd60/keyboard.json b/keyboards/handwired/cmd60/keyboard.json index f9733a7582..05872439c9 100644 --- a/keyboards/handwired/cmd60/keyboard.json +++ b/keyboards/handwired/cmd60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "CMD60", "manufacturer": "cmd", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/co60/rev1/keyboard.json b/keyboards/handwired/co60/rev1/keyboard.json index 1bf60673fb..250c157b90 100644 --- a/keyboards/handwired/co60/rev1/keyboard.json +++ b/keyboards/handwired/co60/rev1/keyboard.json @@ -6,8 +6,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "leader": true, "mousekey": true, diff --git a/keyboards/handwired/co60/rev6/keyboard.json b/keyboards/handwired/co60/rev6/keyboard.json index 743a738ff0..f38ae149b4 100644 --- a/keyboards/handwired/co60/rev6/keyboard.json +++ b/keyboards/handwired/co60/rev6/keyboard.json @@ -6,8 +6,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "leader": true, "mousekey": true, diff --git a/keyboards/handwired/co60/rev7/keyboard.json b/keyboards/handwired/co60/rev7/keyboard.json index 4319c9aedf..493f546372 100644 --- a/keyboards/handwired/co60/rev7/keyboard.json +++ b/keyboards/handwired/co60/rev7/keyboard.json @@ -6,8 +6,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "leader": true, "mousekey": true, diff --git a/keyboards/handwired/colorlice/keyboard.json b/keyboards/handwired/colorlice/keyboard.json index 4ccc10527c..b2606afb89 100644 --- a/keyboards/handwired/colorlice/keyboard.json +++ b/keyboards/handwired/colorlice/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ColorLice", "manufacturer": "marhalloweenvt", - "url": "", "maintainer": "marhalloweenvt", "usb": { "vid": "0xFEED", @@ -73,8 +72,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/handwired/concertina/64key/keyboard.json b/keyboards/handwired/concertina/64key/keyboard.json index dedc240d3f..c8790fa2de 100644 --- a/keyboards/handwired/concertina/64key/keyboard.json +++ b/keyboards/handwired/concertina/64key/keyboard.json @@ -16,8 +16,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/consolekeyboard/18key/keyboard.json b/keyboards/handwired/consolekeyboard/18key/keyboard.json index c75e324cf3..b0e4853038 100644 --- a/keyboards/handwired/consolekeyboard/18key/keyboard.json +++ b/keyboards/handwired/consolekeyboard/18key/keyboard.json @@ -26,7 +26,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/handwired/consolekeyboard/20key/keyboard.json b/keyboards/handwired/consolekeyboard/20key/keyboard.json index 87449fc21e..18b1da288e 100644 --- a/keyboards/handwired/consolekeyboard/20key/keyboard.json +++ b/keyboards/handwired/consolekeyboard/20key/keyboard.json @@ -26,7 +26,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/handwired/consolekeyboard/27key/keyboard.json b/keyboards/handwired/consolekeyboard/27key/keyboard.json index 21a894d5e4..ecb46b9f0e 100644 --- a/keyboards/handwired/consolekeyboard/27key/keyboard.json +++ b/keyboards/handwired/consolekeyboard/27key/keyboard.json @@ -26,7 +26,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/handwired/consolekeyboard/30key/keyboard.json b/keyboards/handwired/consolekeyboard/30key/keyboard.json index 159558e355..2ecef968ac 100644 --- a/keyboards/handwired/consolekeyboard/30key/keyboard.json +++ b/keyboards/handwired/consolekeyboard/30key/keyboard.json @@ -26,7 +26,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/handwired/croxsplit44/keyboard.json b/keyboards/handwired/croxsplit44/keyboard.json index d497942b95..dbb285e115 100644 --- a/keyboards/handwired/croxsplit44/keyboard.json +++ b/keyboards/handwired/croxsplit44/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "splitcustom44", "manufacturer": "Samux6146", - "url": "", "maintainer": "Samux6146", "usb": { "vid": "0xB62C", @@ -31,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/handwired/curiosity/keyboard.json b/keyboards/handwired/curiosity/keyboard.json index e95fa25e71..f49a542bf9 100644 --- a/keyboards/handwired/curiosity/keyboard.json +++ b/keyboards/handwired/curiosity/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Curiosity", "manufacturer": "Spaceman", - "url": "", "maintainer": "Spaceman", "usb": { "vid": "0x5342", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/d48/keyboard.json b/keyboards/handwired/d48/keyboard.json index 99c8a67326..a0266e475e 100644 --- a/keyboards/handwired/d48/keyboard.json +++ b/keyboards/handwired/d48/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "D48", "manufacturer": "Andrew Dunai", - "url": "", "maintainer": "and3rson", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/dactyl/keyboard.json b/keyboards/handwired/dactyl/keyboard.json index 58baf228ca..6026469176 100644 --- a/keyboards/handwired/dactyl/keyboard.json +++ b/keyboards/handwired/dactyl/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl", "manufacturer": "Adereth", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/dactyl_cc/keyboard.json b/keyboards/handwired/dactyl_cc/keyboard.json index e607bfad1a..8c2ef8061c 100644 --- a/keyboards/handwired/dactyl_cc/keyboard.json +++ b/keyboards/handwired/dactyl_cc/keyboard.json @@ -12,7 +12,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, "command": true, "nkro": false }, @@ -23,7 +22,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "development_board": "promicro", "layouts": { diff --git a/keyboards/handwired/dactyl_kinesis/keyboard.json b/keyboards/handwired/dactyl_kinesis/keyboard.json index ee68a2c515..78abe5191d 100644 --- a/keyboards/handwired/dactyl_kinesis/keyboard.json +++ b/keyboards/handwired/dactyl_kinesis/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl Kinesis", "manufacturer": "dmik", - "url": "", "maintainer": "dmik", "usb": { "vid": "0x444D", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false @@ -29,7 +26,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "development_board": "promicro", "layouts": { diff --git a/keyboards/handwired/dactyl_left/keyboard.json b/keyboards/handwired/dactyl_left/keyboard.json index cfb3ad1489..2a2254f578 100644 --- a/keyboards/handwired/dactyl_left/keyboard.json +++ b/keyboards/handwired/dactyl_left/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "dactyl_left", "manufacturer": "RedForty", - "url": "", "maintainer": "RedForty", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/dactyl_lightcycle/keyboard.json b/keyboards/handwired/dactyl_lightcycle/keyboard.json index 1b5f2dd39a..d0ec13f09c 100644 --- a/keyboards/handwired/dactyl_lightcycle/keyboard.json +++ b/keyboards/handwired/dactyl_lightcycle/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "mousekey": true, "extrakey": true, "nkro": false @@ -26,7 +24,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "development_board": "promicro", "community_layouts": ["split_3x6_3", "split_3x5_3"], diff --git a/keyboards/handwired/dactyl_manuform/4x5/keyboard.json b/keyboards/handwired/dactyl_manuform/4x5/keyboard.json index e0a1b531a5..7ef1482028 100644 --- a/keyboards/handwired/dactyl_manuform/4x5/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/4x5/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl Manuform 4x5", "manufacturer": "tshort", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x444D", @@ -17,7 +16,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false @@ -35,7 +33,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "processor": "atmega32u4", "bootloader": "caterina", diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keyboard.json b/keyboards/handwired/dactyl_manuform/4x5_5/keyboard.json index 7efc4718ad..207f8c06a7 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -29,7 +28,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "development_board": "promicro", "layouts": { diff --git a/keyboards/handwired/dactyl_manuform/4x6/keyboard.json b/keyboards/handwired/dactyl_manuform/4x6/keyboard.json index d589c532a8..7b25b2d936 100644 --- a/keyboards/handwired/dactyl_manuform/4x6/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/4x6/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl Manuform 4x6", "manufacturer": "tshort", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x444D", @@ -17,7 +16,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false @@ -35,7 +33,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "processor": "atmega32u4", "bootloader": "caterina", diff --git a/keyboards/handwired/dactyl_manuform/4x6_4_3/keyboard.json b/keyboards/handwired/dactyl_manuform/4x6_4_3/keyboard.json index c0c24a8966..14d49e2c93 100644 --- a/keyboards/handwired/dactyl_manuform/4x6_4_3/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/4x6_4_3/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false @@ -32,7 +30,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "development_board": "promicro", "layouts": { diff --git a/keyboards/handwired/dactyl_manuform/4x6_5/keyboard.json b/keyboards/handwired/dactyl_manuform/4x6_5/keyboard.json index 47ad7aa920..b875d322da 100644 --- a/keyboards/handwired/dactyl_manuform/4x6_5/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/4x6_5/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl Manuform 4x6 5 thumb keys", "manufacturer": "tshort", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x444D", @@ -17,7 +16,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false @@ -35,7 +33,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "processor": "atmega32u4", "bootloader": "caterina", diff --git a/keyboards/handwired/dactyl_manuform/5x6/keyboard.json b/keyboards/handwired/dactyl_manuform/5x6/keyboard.json index 353b148126..2021e082e2 100644 --- a/keyboards/handwired/dactyl_manuform/5x6/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/5x6/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl-Manuform (5x6)", "manufacturer": "tshort", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x444D", @@ -17,7 +16,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false @@ -35,7 +33,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "processor": "atmega32u4", "bootloader": "caterina", diff --git a/keyboards/handwired/dactyl_manuform/5x6_2_5/keyboard.json b/keyboards/handwired/dactyl_manuform/5x6_2_5/keyboard.json index 620ffdec06..8f53dd7521 100644 --- a/keyboards/handwired/dactyl_manuform/5x6_2_5/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/5x6_2_5/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl-Manuform (5x6+2)", "manufacturer": "tshort", - "url": "", "maintainer": "jceb", "usb": { "vid": "0x444D", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false @@ -29,7 +26,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0", + "serial": { + "pin": "D0" + }, "bootmagic": { "matrix": [6, 5] } diff --git a/keyboards/handwired/dactyl_manuform/5x6_5/keyboard.json b/keyboards/handwired/dactyl_manuform/5x6_5/keyboard.json index fc7676aa4b..4d8684bce8 100644 --- a/keyboards/handwired/dactyl_manuform/5x6_5/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/5x6_5/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl-Manuform (5x6)", "manufacturer": "tshort", - "url": "", "maintainer": "jceb", "usb": { "vid": "0x444D", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -29,7 +26,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0", + "serial": { + "pin": "D0" + }, "bootmagic": { "matrix": [6, 5] } diff --git a/keyboards/handwired/dactyl_manuform/5x6_6/keyboard.json b/keyboards/handwired/dactyl_manuform/5x6_6/keyboard.json index 974f1b8bc3..a6122f8492 100644 --- a/keyboards/handwired/dactyl_manuform/5x6_6/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/5x6_6/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -29,7 +28,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D3" + "serial": { + "pin": "D3" + } }, "processor": "atmega32u4", "bootloader": "caterina", diff --git a/keyboards/handwired/dactyl_manuform/5x6_68/keyboard.json b/keyboards/handwired/dactyl_manuform/5x6_68/keyboard.json index 5b6bdfb86e..dc53bea60b 100644 --- a/keyboards/handwired/dactyl_manuform/5x6_68/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/5x6_68/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl-Manuform (5x6) 68 Keys", "manufacturer": "kpagratis", - "url": "", "maintainer": "kpagratis", "development_board": "promicro", "usb": { @@ -12,7 +11,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -25,7 +23,9 @@ }, "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "matrix_pins": { "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], diff --git a/keyboards/handwired/dactyl_manuform/5x7/keyboard.json b/keyboards/handwired/dactyl_manuform/5x7/keyboard.json index d40a45dfa7..bdafd60366 100644 --- a/keyboards/handwired/dactyl_manuform/5x7/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/5x7/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl-Manuform (5x7)", "manufacturer": "tshort", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x444D", @@ -17,7 +16,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false @@ -35,7 +33,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "processor": "atmega32u4", "bootloader": "caterina", diff --git a/keyboards/handwired/dactyl_manuform/5x8/keyboard.json b/keyboards/handwired/dactyl_manuform/5x8/keyboard.json index 24ac4924ac..2ac3010717 100644 --- a/keyboards/handwired/dactyl_manuform/5x8/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/5x8/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl-Manuform (5x8)", "manufacturer": "tshort", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x444D", diff --git a/keyboards/handwired/dactyl_manuform/6x6/info.json b/keyboards/handwired/dactyl_manuform/6x6/info.json index 080e4e1942..3a26d38af1 100644 --- a/keyboards/handwired/dactyl_manuform/6x6/info.json +++ b/keyboards/handwired/dactyl_manuform/6x6/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl-Manuform (6x6)", "manufacturer": "tshort", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x444D", diff --git a/keyboards/handwired/dactyl_manuform/6x6/promicro/keyboard.json b/keyboards/handwired/dactyl_manuform/6x6/promicro/keyboard.json index 213a3c29f5..44ae441270 100644 --- a/keyboards/handwired/dactyl_manuform/6x6/promicro/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/6x6/promicro/keyboard.json @@ -6,7 +6,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "rgblight": { "led_count": 12 diff --git a/keyboards/handwired/dactyl_manuform/6x6_4/keyboard.json b/keyboards/handwired/dactyl_manuform/6x6_4/keyboard.json index 98e96c9639..8663f20eb4 100644 --- a/keyboards/handwired/dactyl_manuform/6x6_4/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/6x6_4/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl-Manuform (6x6+4)", "manufacturer": "tshort", - "url": "", "maintainer": "dmik", "usb": { "vid": "0x444D", @@ -17,7 +16,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false @@ -35,7 +33,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "processor": "atmega32u4", "bootloader": "caterina", diff --git a/keyboards/handwired/dactyl_manuform/6x7/keyboard.json b/keyboards/handwired/dactyl_manuform/6x7/keyboard.json index 153b6c75c4..2c5af325aa 100644 --- a/keyboards/handwired/dactyl_manuform/6x7/keyboard.json +++ b/keyboards/handwired/dactyl_manuform/6x7/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl-Manuform (6x7)", "manufacturer": "tshort", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x444D", @@ -11,7 +10,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false @@ -32,7 +30,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "rgblight": { "led_count": 12 diff --git a/keyboards/handwired/dactyl_manuform_pi_pico/keyboard.json b/keyboards/handwired/dactyl_manuform_pi_pico/keyboard.json index 57202c802a..6d5949e0bf 100644 --- a/keyboards/handwired/dactyl_manuform_pi_pico/keyboard.json +++ b/keyboards/handwired/dactyl_manuform_pi_pico/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/dactyl_maximus/keyboard.json b/keyboards/handwired/dactyl_maximus/keyboard.json index 081fab571a..f53c6ed59d 100644 --- a/keyboards/handwired/dactyl_maximus/keyboard.json +++ b/keyboards/handwired/dactyl_maximus/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl Maximus", "manufacturer": "handwired", - "url": "", "maintainer": "dunk2k", "usb": { "vid": "0x444C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -26,7 +23,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D1" + "serial": { + "pin": "D1" + } }, "development_board": "promicro", "layouts": { diff --git a/keyboards/handwired/dactyl_minidox/keyboard.json b/keyboards/handwired/dactyl_minidox/keyboard.json index 5bd5c5c05a..b488bac4b0 100644 --- a/keyboards/handwired/dactyl_minidox/keyboard.json +++ b/keyboards/handwired/dactyl_minidox/keyboard.json @@ -67,7 +67,9 @@ "diode_direction": "ROW2COL", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "development_board": "promicro", "community_layouts": ["split_3x5_3"], diff --git a/keyboards/handwired/dactyl_promicro/keyboard.json b/keyboards/handwired/dactyl_promicro/keyboard.json index 824ffe7e7e..32511d576d 100644 --- a/keyboards/handwired/dactyl_promicro/keyboard.json +++ b/keyboards/handwired/dactyl_promicro/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl Ergo(6x6)", "manufacturer": "tshort", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,7 +10,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false @@ -29,7 +27,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "rgblight": { "led_count": 12 diff --git a/keyboards/handwired/dactyl_rah/keyboard.json b/keyboards/handwired/dactyl_rah/keyboard.json index 3bc5dc0854..2cb7741cc7 100644 --- a/keyboards/handwired/dactyl_rah/keyboard.json +++ b/keyboards/handwired/dactyl_rah/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false @@ -29,7 +28,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "processor": "atmega32u4", "bootloader": "caterina", diff --git a/keyboards/handwired/dactyl_tracer/keyboard.json b/keyboards/handwired/dactyl_tracer/keyboard.json index 29e5990666..43e2bef722 100644 --- a/keyboards/handwired/dactyl_tracer/keyboard.json +++ b/keyboards/handwired/dactyl_tracer/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "mousekey": true, "extrakey": true, "nkro": true @@ -24,7 +22,9 @@ "development_board": "promicro", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "layouts": { "LAYOUT" : { diff --git a/keyboards/handwired/dactylmacropad/keyboard.json b/keyboards/handwired/dactylmacropad/keyboard.json index 5d40a240a9..fa89b9e117 100644 --- a/keyboards/handwired/dactylmacropad/keyboard.json +++ b/keyboards/handwired/dactylmacropad/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/handwired/daishi/keyboard.json b/keyboards/handwired/daishi/keyboard.json index 22044faab3..f7dabc5992 100644 --- a/keyboards/handwired/daishi/keyboard.json +++ b/keyboards/handwired/daishi/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Daishi", "manufacturer": "MetaMechs", - "url": "", "maintainer": "Croktopus", "usb": { "vid": "0x6D6D", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, "console": true, "dynamic_macro": true, "encoder": true, diff --git a/keyboards/handwired/daskeyboard/daskeyboard4/keyboard.json b/keyboards/handwired/daskeyboard/daskeyboard4/keyboard.json index 8308506512..7d9b60722f 100644 --- a/keyboards/handwired/daskeyboard/daskeyboard4/keyboard.json +++ b/keyboards/handwired/daskeyboard/daskeyboard4/keyboard.json @@ -8,8 +8,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -32,8 +30,7 @@ "indicators": { "num_lock": "C13", "caps_lock": "B14", - "scroll_lock": "B2", - "on_state": 1 + "scroll_lock": "B2" }, "encoder": { "rotary": [ @@ -43,114 +40,233 @@ "tapping": { "toggle": 2 }, + "community_layouts": ["fullsize_ansi", "fullsize_iso"], "layouts": { + "LAYOUT_fullsize_ansi": { + "layout": [ + {"matrix": [5, 16], "x": 0, "y": 0}, + {"matrix": [2, 4], "x": 2, "y": 0}, + {"matrix": [2, 5], "x": 3, "y": 0}, + {"matrix": [3, 5], "x": 4, "y": 0}, + {"matrix": [5, 5], "x": 5, "y": 0}, + {"matrix": [0, 1], "x": 6.5, "y": 0}, + {"matrix": [5, 8], "x": 7.5, "y": 0}, + {"matrix": [3, 3], "x": 8.5, "y": 0}, + {"matrix": [2, 3], "x": 9.5, "y": 0}, + {"matrix": [2, 2], "x": 11, "y": 0}, + {"matrix": [0, 2], "x": 12, "y": 0}, + {"matrix": [5, 2], "x": 13, "y": 0}, + {"matrix": [6, 2], "x": 14, "y": 0}, + {"matrix": [0, 0], "x": 15.25, "y": 0}, + {"matrix": [1, 0], "x": 16.25, "y": 0}, + {"matrix": [1, 1], "x": 17.25, "y": 0}, + + {"matrix": [2, 16], "x": 0, "y": 1.25}, + {"matrix": [0, 16], "x": 1, "y": 1.25}, + {"matrix": [0, 4], "x": 2, "y": 1.25}, + {"matrix": [0, 5], "x": 3, "y": 1.25}, + {"matrix": [0, 6], "x": 4, "y": 1.25}, + {"matrix": [2, 6], "x": 5, "y": 1.25}, + {"matrix": [2, 7], "x": 6, "y": 1.25}, + {"matrix": [0, 7], "x": 7, "y": 1.25}, + {"matrix": [0, 8], "x": 8, "y": 1.25}, + {"matrix": [0, 3], "x": 9, "y": 1.25}, + {"matrix": [0, 9], "x": 10, "y": 1.25}, + {"matrix": [2, 9], "x": 11, "y": 1.25}, + {"matrix": [2, 8], "x": 12, "y": 1.25}, + {"matrix": [3, 2], "w": 2, "x": 13, "y": 1.25}, + {"matrix": [2, 11], "x": 15.25, "y": 1.25}, + {"matrix": [2, 15], "x": 16.25, "y": 1.25}, + {"matrix": [2, 14], "x": 17.25, "y": 1.25}, + {"matrix": [4, 10], "x": 18.5, "y": 1.25}, + {"matrix": [4, 11], "x": 19.5, "y": 1.25}, + {"matrix": [4, 14], "x": 20.5, "y": 1.25}, + {"matrix": [6, 14], "x": 21.5, "y": 1.25}, + + {"matrix": [3, 16], "w": 1.5, "x": 0, "y": 2.25}, + {"matrix": [1, 16], "x": 1.5, "y": 2.25}, + {"matrix": [1, 4], "x": 2.5, "y": 2.25}, + {"matrix": [1, 5], "x": 3.5, "y": 2.25}, + {"matrix": [1, 6], "x": 4.5, "y": 2.25}, + {"matrix": [3, 6], "x": 5.5, "y": 2.25}, + {"matrix": [3, 7], "x": 6.5, "y": 2.25}, + {"matrix": [1, 7], "x": 7.5, "y": 2.25}, + {"matrix": [1, 8], "x": 8.5, "y": 2.25}, + {"matrix": [1, 3], "x": 9.5, "y": 2.25}, + {"matrix": [1, 9], "x": 10.5, "y": 2.25}, + {"matrix": [3, 9], "x": 11.5, "y": 2.25}, + {"matrix": [3, 8], "x": 12.5, "y": 2.25}, + {"matrix": [7, 2], "x": 13.5, "y": 2.25, "w": 1.5}, + {"matrix": [2, 10], "x": 15.25, "y": 2.25}, + {"matrix": [0, 15], "x": 16.25, "y": 2.25}, + {"matrix": [0, 14], "x": 17.25, "y": 2.25}, + {"matrix": [1, 10], "x": 18.5, "y": 2.25}, + {"matrix": [1, 11], "x": 19.5, "y": 2.25}, + {"matrix": [1, 14], "x": 20.5, "y": 2.25}, + {"matrix": [1, 15], "x": 21.5, "y": 2.25, "h": 2}, + + {"matrix": [3, 4], "w": 1.75, "x": 0, "y": 3.25}, + {"matrix": [7, 16], "x": 1.75, "y": 3.25}, + {"matrix": [7, 4], "x": 2.75, "y": 3.25}, + {"matrix": [7, 5], "x": 3.75, "y": 3.25}, + {"matrix": [7, 6], "x": 4.75, "y": 3.25}, + {"matrix": [5, 6], "x": 5.75, "y": 3.25}, + {"matrix": [5, 7], "x": 6.75, "y": 3.25}, + {"matrix": [7, 7], "x": 7.75, "y": 3.25}, + {"matrix": [7, 8], "x": 8.75, "y": 3.25}, + {"matrix": [7, 3], "x": 9.75, "y": 3.25}, + {"matrix": [7, 9], "x": 10.75, "y": 3.25}, + {"matrix": [5, 9], "x": 11.75, "y": 3.25}, + {"matrix": [4, 2], "w": 2.25, "x": 12.75, "y": 3.25}, + {"matrix": [3, 10], "x": 18.5, "y": 3.25}, + {"matrix": [3, 11], "x": 19.5, "y": 3.25}, + {"matrix": [3, 14], "x": 20.5, "y": 3.25}, + + {"matrix": [3, 13], "w": 2.25, "x": 0, "y": 4.25}, + {"matrix": [4, 16], "x": 2.25, "y": 4.25}, + {"matrix": [4, 4], "x": 3.25, "y": 4.25}, + {"matrix": [4, 5], "x": 4.25, "y": 4.25}, + {"matrix": [4, 6], "x": 5.25, "y": 4.25}, + {"matrix": [6, 6], "x": 6.25, "y": 4.25}, + {"matrix": [6, 7], "x": 7.25, "y": 4.25}, + {"matrix": [4, 7], "x": 8.25, "y": 4.25}, + {"matrix": [4, 8], "x": 9.25, "y": 4.25}, + {"matrix": [4, 3], "x": 10.25, "y": 4.25}, + {"matrix": [6, 9], "x": 11.25, "y": 4.25}, + {"matrix": [7, 13], "w": 2.75, "x": 12.25, "y": 4.25}, + {"matrix": [5, 15], "x": 16.25, "y": 4.25}, + {"matrix": [7, 10], "x": 18.5, "y": 4.25}, + {"matrix": [7, 11], "x": 19.5, "y": 4.25}, + {"matrix": [7, 14], "x": 20.5, "y": 4.25}, + {"matrix": [7, 15], "x": 21.5, "y": 4.25, "h": 2}, + + {"matrix": [2, 1], "w": 1.25, "x": 0, "y": 5.25}, + {"matrix": [3, 12], "w": 1.25, "x": 1.25, "y": 5.25}, + {"matrix": [5, 0], "w": 1.25, "x": 2.5, "y": 5.25}, + {"matrix": [5, 10], "w": 6.25, "x": 3.75, "y": 5.25}, + {"matrix": [6, 0], "w": 1.25, "x": 10, "y": 5.25}, + {"matrix": [7, 12], "w": 1.25, "x": 11.25, "y": 5.25}, + {"matrix": [6, 3], "w": 1.25, "x": 12.5, "y": 5.25}, + {"matrix": [4, 1], "w": 1.25, "x": 13.75, "y": 5.25}, + {"matrix": [6, 15], "x": 15.25, "y": 5.25}, + {"matrix": [6, 10], "x": 16.25, "y": 5.25}, + {"matrix": [6, 11], "x": 17.25, "y": 5.25}, + {"matrix": [5, 11], "w": 2, "x": 18.5, "y": 5.25}, + {"matrix": [5, 14], "x": 20.5, "y": 5.25} + ] + }, "LAYOUT_fullsize_iso": { "layout": [ - {"label": "Esc", "matrix": [5, 16], "x": 0, "y": 0}, - {"label": "F1", "matrix": [2, 4], "x": 2, "y": 0}, - {"label": "F2", "matrix": [2, 5], "x": 3, "y": 0}, - {"label": "F3", "matrix": [3, 5], "x": 4, "y": 0}, - {"label": "F4", "matrix": [5, 5], "x": 5, "y": 0}, - {"label": "F5", "matrix": [0, 1], "x": 6.5, "y": 0}, - {"label": "F6", "matrix": [5, 8], "x": 7.5, "y": 0}, - {"label": "F7", "matrix": [3, 3], "x": 8.5, "y": 0}, - {"label": "F8", "matrix": [2, 3], "x": 9.5, "y": 0}, - {"label": "F9", "matrix": [2, 2], "x": 11, "y": 0}, - {"label": "F10", "matrix": [0, 2], "x": 12, "y": 0}, - {"label": "F11", "matrix": [5, 2], "x": 13, "y": 0}, - {"label": "F12", "matrix": [6, 2], "x": 14, "y": 0}, - {"label": "Prt Sc", "matrix": [0, 0], "x": 15.25, "y": 0}, - {"label": "Scr Lk", "matrix": [1, 0], "x": 16.25, "y": 0}, - {"label": "Pause", "matrix": [1, 1], "x": 17.25, "y": 0}, - {"label": "`", "matrix": [2, 16], "x": 0, "y": 1.25}, - {"label": "1", "matrix": [0, 16], "x": 1, "y": 1.25}, - {"label": "2", "matrix": [0, 4], "x": 2, "y": 1.25}, - {"label": "3", "matrix": [0, 5], "x": 3, "y": 1.25}, - {"label": "4", "matrix": [0, 6], "x": 4, "y": 1.25}, - {"label": "5", "matrix": [2, 6], "x": 5, "y": 1.25}, - {"label": "6", "matrix": [2, 7], "x": 6, "y": 1.25}, - {"label": "7", "matrix": [0, 7], "x": 7, "y": 1.25}, - {"label": "8", "matrix": [0, 8], "x": 8, "y": 1.25}, - {"label": "9", "matrix": [0, 3], "x": 9, "y": 1.25}, - {"label": "0", "matrix": [0, 9], "x": 10, "y": 1.25}, - {"label": "-", "matrix": [2, 9], "x": 11, "y": 1.25}, - {"label": "=", "matrix": [2, 8], "x": 12, "y": 1.25}, - {"label": "Backspace", "matrix": [3, 2], "w": 2, "x": 13, "y": 1.25}, - {"label": "Ins", "matrix": [2, 11], "x": 15.25, "y": 1.25}, - {"label": "Home", "matrix": [2, 15], "x": 16.25, "y": 1.25}, - {"label": "Page Up", "matrix": [2, 14], "x": 17.25, "y": 1.25}, - {"label": "Num Lk", "matrix": [4, 10], "x": 18.5, "y": 1.25}, - {"label": "/", "matrix": [4, 11], "x": 19.5, "y": 1.25}, - {"label": "*", "matrix": [4, 14], "x": 20.5, "y": 1.25}, - {"label": "-", "matrix": [6, 14], "x": 21.5, "y": 1.25}, - {"label": "Tab", "matrix": [3, 16], "w": 1.5, "x": 0, "y": 2.25}, - {"label": "Q", "matrix": [1, 16], "x": 1.5, "y": 2.25}, - {"label": "W", "matrix": [1, 4], "x": 2.5, "y": 2.25}, - {"label": "E", "matrix": [1, 5], "x": 3.5, "y": 2.25}, - {"label": "R", "matrix": [1, 6], "x": 4.5, "y": 2.25}, - {"label": "T", "matrix": [3, 6], "x": 5.5, "y": 2.25}, - {"label": "Y", "matrix": [3, 7], "x": 6.5, "y": 2.25}, - {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 2.25}, - {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 2.25}, - {"label": "O", "matrix": [1, 3], "x": 9.5, "y": 2.25}, - {"label": "P", "matrix": [1, 9], "x": 10.5, "y": 2.25}, - {"label": "[", "matrix": [3, 9], "x": 11.5, "y": 2.25}, - {"label": "]", "matrix": [3, 8], "x": 12.5, "y": 2.25}, - {"label": "Del", "matrix": [2, 10], "x": 15.25, "y": 2.25}, - {"label": "End", "matrix": [0, 15], "x": 16.25, "y": 2.25}, - {"label": "Page Down", "matrix": [0, 14], "x": 17.25, "y": 2.25}, - {"label": "7", "matrix": [1, 10], "x": 18.5, "y": 2.25}, - {"label": "8", "matrix": [1, 11], "x": 19.5, "y": 2.25}, - {"label": "9", "matrix": [1, 14], "x": 20.5, "y": 2.25}, - {"label": "+", "h": 2, "matrix": [1, 15], "x": 21.5, "y": 2.25}, - {"label": "Caps Lock", "matrix": [3, 4], "w": 1.75, "x": 0, "y": 3.25}, - {"label": "A", "matrix": [7, 16], "x": 1.75, "y": 3.25}, - {"label": "S", "matrix": [7, 4], "x": 2.75, "y": 3.25}, - {"label": "D", "matrix": [7, 5], "x": 3.75, "y": 3.25}, - {"label": "F", "matrix": [7, 6], "x": 4.75, "y": 3.25}, - {"label": "G", "matrix": [5, 6], "x": 5.75, "y": 3.25}, - {"label": "H", "matrix": [5, 7], "x": 6.75, "y": 3.25}, - {"label": "J", "matrix": [7, 7], "x": 7.75, "y": 3.25}, - {"label": "K", "matrix": [7, 8], "x": 8.75, "y": 3.25}, - {"label": "L", "matrix": [7, 3], "x": 9.75, "y": 3.25}, - {"label": ";", "matrix": [7, 9], "x": 10.75, "y": 3.25}, - {"label": "'", "matrix": [5, 9], "x": 11.75, "y": 3.25}, - {"label": "#", "matrix": [1, 2], "x": 12.75, "y": 3.25}, - {"label": "Return", "h": 2, "matrix": [4, 2], "w": 1.25, "x": 13.75, "y": 2.25}, - {"label": "4", "matrix": [3, 10], "x": 18.5, "y": 3.25}, - {"label": "5", "matrix": [3, 11], "x": 19.5, "y": 3.25}, - {"label": "6", "matrix": [3, 14], "x": 20.5, "y": 3.25}, - {"label": "Shift L", "matrix": [3, 13], "w": 1.25, "x": 0, "y": 4.25}, - {"label": "\\", "matrix": [5, 4], "x": 1.25, "y": 4.25}, - {"label": "Z", "matrix": [4, 16], "x": 2.25, "y": 4.25}, - {"label": "X", "matrix": [4, 4], "x": 3.25, "y": 4.25}, - {"label": "C", "matrix": [4, 5], "x": 4.25, "y": 4.25}, - {"label": "V", "matrix": [4, 6], "x": 5.25, "y": 4.25}, - {"label": "B", "matrix": [6, 6], "x": 6.25, "y": 4.25}, - {"label": "N", "matrix": [6, 7], "x": 7.25, "y": 4.25}, - {"label": "M", "matrix": [4, 7], "x": 8.25, "y": 4.25}, - {"label": ",", "matrix": [4, 8], "x": 9.25, "y": 4.25}, - {"label": ".", "matrix": [4, 3], "x": 10.25, "y": 4.25}, - {"label": "/", "matrix": [6, 9], "x": 11.25, "y": 4.25}, - {"label": "Shift R", "matrix": [7, 13], "w": 2.75, "x": 12.25, "y": 4.25}, - {"label": "Up", "matrix": [5, 15], "x": 16.25, "y": 4.25}, - {"label": "1", "matrix": [7, 10], "x": 18.5, "y": 4.25}, - {"label": "2", "matrix": [7, 11], "x": 19.5, "y": 4.25}, - {"label": "3", "matrix": [7, 14], "x": 20.5, "y": 4.25}, - {"label": "Enter", "h": 2, "matrix": [7, 15], "x": 21.5, "y": 4.25}, - {"label": "Control L", "matrix": [2, 1], "w": 1.25, "x": 0, "y": 5.25}, - {"label": "Super L", "matrix": [3, 12], "w": 1.25, "x": 1.25, "y": 5.25}, - {"label": "Alt L", "matrix": [5, 0], "w": 1.25, "x": 2.5, "y": 5.25}, - {"label": " ", "matrix": [5, 10], "w": 6.25, "x": 3.75, "y": 5.25}, - {"label": "Alt R", "matrix": [6, 0], "w": 1.25, "x": 10, "y": 5.25}, - {"label": "Super R", "matrix": [7, 12], "w": 1.25, "x": 11.25, "y": 5.25}, - {"label": "Menu", "matrix": [6, 3], "w": 1.25, "x": 12.5, "y": 5.25}, - {"label": "Control R", "matrix": [4, 1], "w": 1.25, "x": 13.75, "y": 5.25}, - {"label": "Left", "matrix": [6, 15], "x": 15.25, "y": 5.25}, - {"label": "Down", "matrix": [6, 10], "x": 16.25, "y": 5.25}, - {"label": "Right", "matrix": [6, 11], "x": 17.25, "y": 5.25}, - {"label": "0", "matrix": [5, 11], "w": 2, "x": 18.5, "y": 5.25}, - {"label": "Del", "matrix": [5, 14], "x": 20.5, "y": 5.25} + {"matrix": [5, 16], "x": 0, "y": 0}, + {"matrix": [2, 4], "x": 2, "y": 0}, + {"matrix": [2, 5], "x": 3, "y": 0}, + {"matrix": [3, 5], "x": 4, "y": 0}, + {"matrix": [5, 5], "x": 5, "y": 0}, + {"matrix": [0, 1], "x": 6.5, "y": 0}, + {"matrix": [5, 8], "x": 7.5, "y": 0}, + {"matrix": [3, 3], "x": 8.5, "y": 0}, + {"matrix": [2, 3], "x": 9.5, "y": 0}, + {"matrix": [2, 2], "x": 11, "y": 0}, + {"matrix": [0, 2], "x": 12, "y": 0}, + {"matrix": [5, 2], "x": 13, "y": 0}, + {"matrix": [6, 2], "x": 14, "y": 0}, + {"matrix": [0, 0], "x": 15.25, "y": 0}, + {"matrix": [1, 0], "x": 16.25, "y": 0}, + {"matrix": [1, 1], "x": 17.25, "y": 0}, + + {"matrix": [2, 16], "x": 0, "y": 1.25}, + {"matrix": [0, 16], "x": 1, "y": 1.25}, + {"matrix": [0, 4], "x": 2, "y": 1.25}, + {"matrix": [0, 5], "x": 3, "y": 1.25}, + {"matrix": [0, 6], "x": 4, "y": 1.25}, + {"matrix": [2, 6], "x": 5, "y": 1.25}, + {"matrix": [2, 7], "x": 6, "y": 1.25}, + {"matrix": [0, 7], "x": 7, "y": 1.25}, + {"matrix": [0, 8], "x": 8, "y": 1.25}, + {"matrix": [0, 3], "x": 9, "y": 1.25}, + {"matrix": [0, 9], "x": 10, "y": 1.25}, + {"matrix": [2, 9], "x": 11, "y": 1.25}, + {"matrix": [2, 8], "x": 12, "y": 1.25}, + {"matrix": [3, 2], "w": 2, "x": 13, "y": 1.25}, + {"matrix": [2, 11], "x": 15.25, "y": 1.25}, + {"matrix": [2, 15], "x": 16.25, "y": 1.25}, + {"matrix": [2, 14], "x": 17.25, "y": 1.25}, + {"matrix": [4, 10], "x": 18.5, "y": 1.25}, + {"matrix": [4, 11], "x": 19.5, "y": 1.25}, + {"matrix": [4, 14], "x": 20.5, "y": 1.25}, + {"matrix": [6, 14], "x": 21.5, "y": 1.25}, + + {"matrix": [3, 16], "w": 1.5, "x": 0, "y": 2.25}, + {"matrix": [1, 16], "x": 1.5, "y": 2.25}, + {"matrix": [1, 4], "x": 2.5, "y": 2.25}, + {"matrix": [1, 5], "x": 3.5, "y": 2.25}, + {"matrix": [1, 6], "x": 4.5, "y": 2.25}, + {"matrix": [3, 6], "x": 5.5, "y": 2.25}, + {"matrix": [3, 7], "x": 6.5, "y": 2.25}, + {"matrix": [1, 7], "x": 7.5, "y": 2.25}, + {"matrix": [1, 8], "x": 8.5, "y": 2.25}, + {"matrix": [1, 3], "x": 9.5, "y": 2.25}, + {"matrix": [1, 9], "x": 10.5, "y": 2.25}, + {"matrix": [3, 9], "x": 11.5, "y": 2.25}, + {"matrix": [3, 8], "x": 12.5, "y": 2.25}, + {"matrix": [2, 10], "x": 15.25, "y": 2.25}, + {"matrix": [0, 15], "x": 16.25, "y": 2.25}, + {"matrix": [0, 14], "x": 17.25, "y": 2.25}, + {"matrix": [1, 10], "x": 18.5, "y": 2.25}, + {"matrix": [1, 11], "x": 19.5, "y": 2.25}, + {"matrix": [1, 14], "x": 20.5, "y": 2.25}, + {"matrix": [1, 15], "x": 21.5, "y": 2.25, "h": 2}, + + {"matrix": [3, 4], "w": 1.75, "x": 0, "y": 3.25}, + {"matrix": [7, 16], "x": 1.75, "y": 3.25}, + {"matrix": [7, 4], "x": 2.75, "y": 3.25}, + {"matrix": [7, 5], "x": 3.75, "y": 3.25}, + {"matrix": [7, 6], "x": 4.75, "y": 3.25}, + {"matrix": [5, 6], "x": 5.75, "y": 3.25}, + {"matrix": [5, 7], "x": 6.75, "y": 3.25}, + {"matrix": [7, 7], "x": 7.75, "y": 3.25}, + {"matrix": [7, 8], "x": 8.75, "y": 3.25}, + {"matrix": [7, 3], "x": 9.75, "y": 3.25}, + {"matrix": [7, 9], "x": 10.75, "y": 3.25}, + {"matrix": [5, 9], "x": 11.75, "y": 3.25}, + {"matrix": [1, 2], "x": 12.75, "y": 3.25}, + {"matrix": [4, 2], "w": 1.25, "x": 13.75, "y": 2.25, "h": 2}, + {"matrix": [3, 10], "x": 18.5, "y": 3.25}, + {"matrix": [3, 11], "x": 19.5, "y": 3.25}, + {"matrix": [3, 14], "x": 20.5, "y": 3.25}, + + {"matrix": [3, 13], "w": 1.25, "x": 0, "y": 4.25}, + {"matrix": [5, 4], "x": 1.25, "y": 4.25}, + {"matrix": [4, 16], "x": 2.25, "y": 4.25}, + {"matrix": [4, 4], "x": 3.25, "y": 4.25}, + {"matrix": [4, 5], "x": 4.25, "y": 4.25}, + {"matrix": [4, 6], "x": 5.25, "y": 4.25}, + {"matrix": [6, 6], "x": 6.25, "y": 4.25}, + {"matrix": [6, 7], "x": 7.25, "y": 4.25}, + {"matrix": [4, 7], "x": 8.25, "y": 4.25}, + {"matrix": [4, 8], "x": 9.25, "y": 4.25}, + {"matrix": [4, 3], "x": 10.25, "y": 4.25}, + {"matrix": [6, 9], "x": 11.25, "y": 4.25}, + {"matrix": [7, 13], "w": 2.75, "x": 12.25, "y": 4.25}, + {"matrix": [5, 15], "x": 16.25, "y": 4.25}, + {"matrix": [7, 10], "x": 18.5, "y": 4.25}, + {"matrix": [7, 11], "x": 19.5, "y": 4.25}, + {"matrix": [7, 14], "x": 20.5, "y": 4.25}, + {"matrix": [7, 15], "x": 21.5, "y": 4.25, "h": 2}, + + {"matrix": [2, 1], "w": 1.25, "x": 0, "y": 5.25}, + {"matrix": [3, 12], "w": 1.25, "x": 1.25, "y": 5.25}, + {"matrix": [5, 0], "w": 1.25, "x": 2.5, "y": 5.25}, + {"matrix": [5, 10], "w": 6.25, "x": 3.75, "y": 5.25}, + {"matrix": [6, 0], "w": 1.25, "x": 10, "y": 5.25}, + {"matrix": [7, 12], "w": 1.25, "x": 11.25, "y": 5.25}, + {"matrix": [6, 3], "w": 1.25, "x": 12.5, "y": 5.25}, + {"matrix": [4, 1], "w": 1.25, "x": 13.75, "y": 5.25}, + {"matrix": [6, 15], "x": 15.25, "y": 5.25}, + {"matrix": [6, 10], "x": 16.25, "y": 5.25}, + {"matrix": [6, 11], "x": 17.25, "y": 5.25}, + {"matrix": [5, 11], "w": 2, "x": 18.5, "y": 5.25}, + {"matrix": [5, 14], "x": 20.5, "y": 5.25} ] } } diff --git a/keyboards/handwired/datahand/keyboard.json b/keyboards/handwired/datahand/keyboard.json index c2c7dab421..1f1ebc07ee 100644 --- a/keyboards/handwired/datahand/keyboard.json +++ b/keyboards/handwired/datahand/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "DataHand", "manufacturer": "DataHand", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x13BA", diff --git a/keyboards/handwired/dc/mc/001/keyboard.json b/keyboards/handwired/dc/mc/001/keyboard.json index c91df1ca8b..b9e0a7a09f 100644 --- a/keyboards/handwired/dc/mc/001/keyboard.json +++ b/keyboards/handwired/dc/mc/001/keyboard.json @@ -21,8 +21,6 @@ "bootloader": "caterina", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/handwired/ddg_56/keyboard.json b/keyboards/handwired/ddg_56/keyboard.json index e211821dae..5259a2683e 100644 --- a/keyboards/handwired/ddg_56/keyboard.json +++ b/keyboards/handwired/ddg_56/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "DDG_56", "manufacturer": "Spaceman", - "url": "", "maintainer": "spaceman", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "audio": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": true diff --git a/keyboards/handwired/dmote/keyboard.json b/keyboards/handwired/dmote/keyboard.json index e6514b17ba..2e205e153c 100644 --- a/keyboards/handwired/dmote/keyboard.json +++ b/keyboards/handwired/dmote/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "console": false, - "command": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/handwired/eagleii/keyboard.json b/keyboards/handwired/eagleii/keyboard.json index 4179a4cdd6..9b5d026530 100644 --- a/keyboards/handwired/eagleii/keyboard.json +++ b/keyboards/handwired/eagleii/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "II", "manufacturer": "Eagle", - "url": "", "maintainer": "Spaceman", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/elrgo_s/keyboard.json b/keyboards/handwired/elrgo_s/keyboard.json index c0ae4beadb..ae0054b65c 100644 --- a/keyboards/handwired/elrgo_s/keyboard.json +++ b/keyboards/handwired/elrgo_s/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Elrgo S", "manufacturer": "Eloren", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x454C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/ergocheap/keyboard.json b/keyboards/handwired/ergocheap/keyboard.json index 8728b486a8..879cf8a4d1 100644 --- a/keyboards/handwired/ergocheap/keyboard.json +++ b/keyboards/handwired/ergocheap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ergocheap", "manufacturer": "xSteins", - "url": "", "maintainer": "xSteins", "usb": { "vid": "0xFEDE", diff --git a/keyboards/handwired/fc200rt_qmk/keyboard.json b/keyboards/handwired/fc200rt_qmk/keyboard.json index aab792e7bd..7e45cbdb62 100644 --- a/keyboards/handwired/fc200rt_qmk/keyboard.json +++ b/keyboards/handwired/fc200rt_qmk/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "fc200rt_qmk", "manufacturer": "NaCly", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xBEEF", diff --git a/keyboards/handwired/fivethirteen/keyboard.json b/keyboards/handwired/fivethirteen/keyboard.json index 9046fc53ba..f6492d3e0b 100644 --- a/keyboards/handwired/fivethirteen/keyboard.json +++ b/keyboards/handwired/fivethirteen/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "fivethirteen", "manufacturer": "rdg", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/frankie_macropad/keyboard.json b/keyboards/handwired/frankie_macropad/keyboard.json index f994b1fa48..278a76c7c8 100644 --- a/keyboards/handwired/frankie_macropad/keyboard.json +++ b/keyboards/handwired/frankie_macropad/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "grave_esc": false, diff --git a/keyboards/handwired/freoduo/keyboard.json b/keyboards/handwired/freoduo/keyboard.json index d9f4ad4808..afbd763a96 100644 --- a/keyboards/handwired/freoduo/keyboard.json +++ b/keyboards/handwired/freoduo/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/handwired/gamenum/keyboard.json b/keyboards/handwired/gamenum/keyboard.json index 50a3962108..010f9526db 100644 --- a/keyboards/handwired/gamenum/keyboard.json +++ b/keyboards/handwired/gamenum/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "GameNum", "manufacturer": "Seth-Senpai", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x1234", diff --git a/keyboards/handwired/hacked_motospeed/keyboard.json b/keyboards/handwired/hacked_motospeed/keyboard.json index 1a38cdafdc..17f85a7e9d 100644 --- a/keyboards/handwired/hacked_motospeed/keyboard.json +++ b/keyboards/handwired/hacked_motospeed/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Hacked Motospeed", "manufacturer": "MMO_Corp", - "url": "", "maintainer": "Deckweiss", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/heisenberg/keyboard.json b/keyboards/handwired/heisenberg/keyboard.json index 460018ef1e..d85477fe24 100644 --- a/keyboards/handwired/heisenberg/keyboard.json +++ b/keyboards/handwired/heisenberg/keyboard.json @@ -29,8 +29,6 @@ "features": { "audio": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/handwired/hexon38/keyboard.json b/keyboards/handwired/hexon38/keyboard.json index dfc11eb532..1d3595aa38 100644 --- a/keyboards/handwired/hexon38/keyboard.json +++ b/keyboards/handwired/hexon38/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "hexon38", "manufacturer": "pepaslabs", - "url": "", "maintainer": "cellularmitosis", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/hnah108/keyboard.json b/keyboards/handwired/hnah108/keyboard.json index 3099ed8548..a02a70173c 100644 --- a/keyboards/handwired/hnah108/keyboard.json +++ b/keyboards/handwired/hnah108/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Hnah108", "manufacturer": "HnahKB", - "url": "", "maintainer": "HnahKB", "usb": { "vid": "0xFEED", @@ -57,8 +56,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/handwired/hnah40/keyboard.json b/keyboards/handwired/hnah40/keyboard.json index e80bbdaec5..a7613c401e 100644 --- a/keyboards/handwired/hnah40/keyboard.json +++ b/keyboards/handwired/hnah40/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/hnah40rgb/keyboard.json b/keyboards/handwired/hnah40rgb/keyboard.json index 753b5dd00a..6f13b70095 100644 --- a/keyboards/handwired/hnah40rgb/keyboard.json +++ b/keyboards/handwired/hnah40rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Hnah40V2", "manufacturer": "HnahKB", - "url": "", "maintainer": "HnahKB", "usb": { "vid": "0xFEED", @@ -61,14 +60,11 @@ "animation": "cycle_pinwheel" }, "driver": "ws2812", - "led_flush_limit": 16, "max_brightness": 200, "react_on_keyup": true }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false, diff --git a/keyboards/handwired/hwpm87/keyboard.json b/keyboards/handwired/hwpm87/keyboard.json index 0dbbb0472a..f239ea9ecc 100644 --- a/keyboards/handwired/hwpm87/keyboard.json +++ b/keyboards/handwired/hwpm87/keyboard.json @@ -2,7 +2,6 @@ "manufacturer": "KD-MM2", "keyboard_name": "hwpm87", "maintainer": "KD-MM2", - "url": "", "usb": { "vid": "0xFEED", "pid": "0x0001", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/handwired/iso85k/keyboard.json b/keyboards/handwired/iso85k/keyboard.json index 625a356e30..e88c4c3688 100644 --- a/keyboards/handwired/iso85k/keyboard.json +++ b/keyboards/handwired/iso85k/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true @@ -17,7 +15,6 @@ "rows": ["C7", "C6", "B15", "B14", "B13", "B12"] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0xCAFE", diff --git a/keyboards/handwired/itstleo9/info.json b/keyboards/handwired/itstleo9/info.json index ba9de4d774..340b8a9e33 100644 --- a/keyboards/handwired/itstleo9/info.json +++ b/keyboards/handwired/itstleo9/info.json @@ -5,13 +5,10 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/handwired/jankrp2040dactyl/keyboard.json b/keyboards/handwired/jankrp2040dactyl/keyboard.json index 0d155a70bd..ff49cef6a2 100644 --- a/keyboards/handwired/jankrp2040dactyl/keyboard.json +++ b/keyboards/handwired/jankrp2040dactyl/keyboard.json @@ -6,9 +6,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "GP0", "serial": { - "driver": "vendor" + "driver": "vendor", + "pin": "GP0" } }, @@ -25,7 +25,6 @@ }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0000", diff --git a/keyboards/handwired/jn68m/keyboard.json b/keyboards/handwired/jn68m/keyboard.json index e2c833b002..818dce9805 100644 --- a/keyboards/handwired/jn68m/keyboard.json +++ b/keyboards/handwired/jn68m/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "JN68M", "manufacturer": "MxBlue", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xC714", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/jopr/keyboard.json b/keyboards/handwired/jopr/keyboard.json index 36aa7276b5..f6320f7905 100644 --- a/keyboards/handwired/jopr/keyboard.json +++ b/keyboards/handwired/jopr/keyboard.json @@ -19,8 +19,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/handwired/jot50/keyboard.json b/keyboards/handwired/jot50/keyboard.json index d272ffc6b1..d0108b4aa9 100644 --- a/keyboards/handwired/jot50/keyboard.json +++ b/keyboards/handwired/jot50/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Jot50", "manufacturer": "Jotix", - "url": "", "maintainer": "jotix", "usb": { "vid": "0xFEED", @@ -11,7 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/jotanck/keyboard.json b/keyboards/handwired/jotanck/keyboard.json index 94ec9c15e5..bddcce9fa5 100644 --- a/keyboards/handwired/jotanck/keyboard.json +++ b/keyboards/handwired/jotanck/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/jotlily60/keyboard.json b/keyboards/handwired/jotlily60/keyboard.json index 7a8a2a50d9..fd072d83db 100644 --- a/keyboards/handwired/jotlily60/keyboard.json +++ b/keyboards/handwired/jotlily60/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/jotpad16/keyboard.json b/keyboards/handwired/jotpad16/keyboard.json index 6a8a5db44c..5a2503aaae 100644 --- a/keyboards/handwired/jotpad16/keyboard.json +++ b/keyboards/handwired/jotpad16/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "JotPad16", "manufacturer": "Jotix", - "url": "", "maintainer": "jotix", "usb": { "vid": "0xFEED", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/handwired/jtallbean/split_65/keyboard.json b/keyboards/handwired/jtallbean/split_65/keyboard.json index b10e6c6cc0..86d4de0195 100644 --- a/keyboards/handwired/jtallbean/split_65/keyboard.json +++ b/keyboards/handwired/jtallbean/split_65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "split_65", "manufacturer": "jtallbean", - "url": "", "maintainer": "samlli", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/juliet/keyboard.json b/keyboards/handwired/juliet/keyboard.json index 49c2489e66..bf0193432d 100644 --- a/keyboards/handwired/juliet/keyboard.json +++ b/keyboards/handwired/juliet/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/handwired/k8split/keyboard.json b/keyboards/handwired/k8split/keyboard.json index 62ea64604a..2312d43689 100644 --- a/keyboards/handwired/k8split/keyboard.json +++ b/keyboards/handwired/k8split/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "k8split", "manufacturer": "Ckat", - "url": "", "maintainer": "Ckath", "usb": { "vid": "0xC81D", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/k_numpad17/keyboard.json b/keyboards/handwired/k_numpad17/keyboard.json index 7d48cd1f3e..de52ca88af 100644 --- a/keyboards/handwired/k_numpad17/keyboard.json +++ b/keyboards/handwired/k_numpad17/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "K-Numpad17", "manufacturer": "Handwired", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/kbod/keyboard.json b/keyboards/handwired/kbod/keyboard.json index 91926b554d..abd8c5dad4 100644 --- a/keyboards/handwired/kbod/keyboard.json +++ b/keyboards/handwired/kbod/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "kbod", "manufacturer": "fudanchii", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/ks63/keyboard.json b/keyboards/handwired/ks63/keyboard.json index 09e59975e8..8b5a6c4e4c 100644 --- a/keyboards/handwired/ks63/keyboard.json +++ b/keyboards/handwired/ks63/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ks63", "manufacturer": "kleshwong", - "url": "", "maintainer": "Klesh Wong", "usb": { "vid": "0xFEED", @@ -11,7 +10,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/leftynumpad/keyboard.json b/keyboards/handwired/leftynumpad/keyboard.json index bb178be5be..b14191c744 100644 --- a/keyboards/handwired/leftynumpad/keyboard.json +++ b/keyboards/handwired/leftynumpad/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/lemonpad/keyboard.json b/keyboards/handwired/lemonpad/keyboard.json index aab7b94692..dea15dcc3c 100644 --- a/keyboards/handwired/lemonpad/keyboard.json +++ b/keyboards/handwired/lemonpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "lemonpad", "manufacturer": "dari-studios", - "url": "", "maintainer": "dari-studios", "usb": { "vid": "0x6473", diff --git a/keyboards/handwired/lovelive9/keyboard.json b/keyboards/handwired/lovelive9/keyboard.json index f8962bf761..2b05d0cb5b 100644 --- a/keyboards/handwired/lovelive9/keyboard.json +++ b/keyboards/handwired/lovelive9/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/handwired/macroboard/info.json b/keyboards/handwired/macroboard/info.json index 5c27c96ae9..adef955b9d 100644 --- a/keyboards/handwired/macroboard/info.json +++ b/keyboards/handwired/macroboard/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Macroboard", "manufacturer": "QMK", - "url": "", "maintainer": "Micha\u0142 Szczepaniak", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/magicforce61/keyboard.json b/keyboards/handwired/magicforce61/keyboard.json index e15cc0590e..e66f9dfe9c 100644 --- a/keyboards/handwired/magicforce61/keyboard.json +++ b/keyboards/handwired/magicforce61/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Magicforce 61", "manufacturer": "Hexwire", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/magicforce68/keyboard.json b/keyboards/handwired/magicforce68/keyboard.json index 6567c8b1cf..1101dd6001 100644 --- a/keyboards/handwired/magicforce68/keyboard.json +++ b/keyboards/handwired/magicforce68/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Magicforce 68", "manufacturer": "Hexwire", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/marauder/keyboard.json b/keyboards/handwired/marauder/keyboard.json index aa612c1ff0..29b8fba30b 100644 --- a/keyboards/handwired/marauder/keyboard.json +++ b/keyboards/handwired/marauder/keyboard.json @@ -22,8 +22,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/handwired/marek128b/ergosplit44/keyboard.json b/keyboards/handwired/marek128b/ergosplit44/keyboard.json index f9a88576a7..b14ca53bee 100644 --- a/keyboards/handwired/marek128b/ergosplit44/keyboard.json +++ b/keyboards/handwired/marek128b/ergosplit44/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -21,7 +19,6 @@ "rows": ["GP2", "GP3", "GP4", "GP5"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/handwired/mechboards_micropad/keyboard.json b/keyboards/handwired/mechboards_micropad/keyboard.json index 65ef6fb5b4..c9a150229d 100644 --- a/keyboards/handwired/mechboards_micropad/keyboard.json +++ b/keyboards/handwired/mechboards_micropad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Mechboards Micropad", "manufacturer": "Yiancar", - "url": "", "maintainer": "yiancar", "usb": { "vid": "0x8968", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/minorca/keyboard.json b/keyboards/handwired/minorca/keyboard.json index 9ac1f52d13..32e3c9f92d 100644 --- a/keyboards/handwired/minorca/keyboard.json +++ b/keyboards/handwired/minorca/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Minorca", "manufacturer": "panc.co", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,7 +10,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/misterdeck/keyboard.json b/keyboards/handwired/misterdeck/keyboard.json index 02c4348781..55032ddd80 100644 --- a/keyboards/handwired/misterdeck/keyboard.json +++ b/keyboards/handwired/misterdeck/keyboard.json @@ -13,7 +13,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/ms_sculpt_mobile/info.json b/keyboards/handwired/ms_sculpt_mobile/info.json index 918f166c61..33e250b682 100644 --- a/keyboards/handwired/ms_sculpt_mobile/info.json +++ b/keyboards/handwired/ms_sculpt_mobile/info.json @@ -1,6 +1,5 @@ { "manufacturer": "Microsoftplus", - "url": "", "maintainer": "qmk", "features": { "bootmagic": false, diff --git a/keyboards/handwired/mutepad/keyboard.json b/keyboards/handwired/mutepad/keyboard.json index f727569c98..fd16cd7447 100644 --- a/keyboards/handwired/mutepad/keyboard.json +++ b/keyboards/handwired/mutepad/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/myskeeb/keyboard.json b/keyboards/handwired/myskeeb/keyboard.json index c75f40cf46..d6805a400c 100644 --- a/keyboards/handwired/myskeeb/keyboard.json +++ b/keyboards/handwired/myskeeb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MySKeeb", "manufacturer": "DAG3", - "url": "", "maintainer": "su8044", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/nicekey/keyboard.json b/keyboards/handwired/nicekey/keyboard.json index fe7267ab84..5679c54432 100644 --- a/keyboards/handwired/nicekey/keyboard.json +++ b/keyboards/handwired/nicekey/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "nicekey", "manufacturer": "Lukas", - "url": "", "maintainer": "spydon", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/nortontechpad/keyboard.json b/keyboards/handwired/nortontechpad/keyboard.json index e90b6b5482..25fceb93da 100644 --- a/keyboards/handwired/nortontechpad/keyboard.json +++ b/keyboards/handwired/nortontechpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NortonTechPad", "manufacturer": "NortonTech", - "url": "", "maintainer": "NortonTech", "usb": { "vid": "0x9879", diff --git a/keyboards/handwired/not_so_minidox/keyboard.json b/keyboards/handwired/not_so_minidox/keyboard.json index fa68a823af..0c10858d67 100644 --- a/keyboards/handwired/not_so_minidox/keyboard.json +++ b/keyboards/handwired/not_so_minidox/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Not So MiniDox", "manufacturer": "mtdjr", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/novem/keyboard.json b/keyboards/handwired/novem/keyboard.json index c824f7809c..47c0a1bca6 100644 --- a/keyboards/handwired/novem/keyboard.json +++ b/keyboards/handwired/novem/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "novem", "manufacturer": "Jose I. Martinez", - "url": "", "maintainer": "Jose I. Martinez", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/nozbe_macro/keyboard.json b/keyboards/handwired/nozbe_macro/keyboard.json index 584509ad18..a1515df7e3 100644 --- a/keyboards/handwired/nozbe_macro/keyboard.json +++ b/keyboards/handwired/nozbe_macro/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Nozbe Reunion Pad", "manufacturer": "Leon Omelan", - "url": "", "maintainer": "Leon Omelan", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/numpad20/keyboard.json b/keyboards/handwired/numpad20/keyboard.json index e47cfc5df5..4f4254cf12 100644 --- a/keyboards/handwired/numpad20/keyboard.json +++ b/keyboards/handwired/numpad20/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Numpad 20", "manufacturer": "Hexwire", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xBB80", diff --git a/keyboards/handwired/obuwunkunubi/spaget/keyboard.json b/keyboards/handwired/obuwunkunubi/spaget/keyboard.json index 238736705d..3926b96db5 100644 --- a/keyboards/handwired/obuwunkunubi/spaget/keyboard.json +++ b/keyboards/handwired/obuwunkunubi/spaget/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "spaget", "manufacturer": "obuwunkunubi", - "url": "", "maintainer": "obuwunkunubi", "usb": { "vid": "0x1337", @@ -11,7 +10,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/oem_ansi_fullsize/keyboard.json b/keyboards/handwired/oem_ansi_fullsize/keyboard.json index e83b2c61d3..3c3ebb2646 100644 --- a/keyboards/handwired/oem_ansi_fullsize/keyboard.json +++ b/keyboards/handwired/oem_ansi_fullsize/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/handwired/onekey/info.json b/keyboards/handwired/onekey/info.json index 5cf7c600ee..7b6b7ddab8 100644 --- a/keyboards/handwired/onekey/info.json +++ b/keyboards/handwired/onekey/info.json @@ -1,6 +1,5 @@ { "manufacturer": "QMK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -12,8 +11,6 @@ "bootmagic": false, "mousekey": false, "extrakey": true, - "console": false, - "command": false, "nkro": false }, "qmk": { diff --git a/keyboards/lendunistus/rpneko65/rev1/config.h b/keyboards/handwired/onekey/keymaps/battery/config.h index 6786155fbf..8a1c05d436 100644 --- a/keyboards/lendunistus/rpneko65/rev1/config.h +++ b/keyboards/handwired/onekey/keymaps/battery/config.h @@ -1,6 +1,6 @@ -// Copyright 2023 lendunistus +// Copyright 2024 QMK // SPDX-License-Identifier: GPL-2.0-or-later #pragma once -#define CAPS_LOCK_ENABLE true +#define BATTERY_PIN ADC_PIN diff --git a/keyboards/handwired/onekey/keymaps/battery/keymap.c b/keyboards/handwired/onekey/keymaps/battery/keymap.c new file mode 100644 index 0000000000..74191e83fc --- /dev/null +++ b/keyboards/handwired/onekey/keymaps/battery/keymap.c @@ -0,0 +1,28 @@ +// Copyright 2024 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H +#include "battery.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + LAYOUT_ortho_1x1(KC_A) +}; + +void keyboard_post_init_user(void) { + // Customise these values to desired behaviour + debug_enable=true; +// debug_matrix=false; +// debug_keyboard=true; +// debug_mouse=false; + + battery_init(); +} + +void housekeeping_task_user(void) { + static uint32_t last = 0; + if (timer_elapsed32(last) > 2000) { + uprintf("Bat: %d!\n", battery_get_percent()); + + last = timer_read32(); + } +} diff --git a/keyboards/handwired/onekey/keymaps/battery/keymap.json b/keyboards/handwired/onekey/keymaps/battery/keymap.json new file mode 100644 index 0000000000..c641dfe773 --- /dev/null +++ b/keyboards/handwired/onekey/keymaps/battery/keymap.json @@ -0,0 +1,7 @@ +{ + "config": { + "features": { + "console": true + } + } +} diff --git a/keyboards/handwired/onekey/keymaps/battery/rules.mk b/keyboards/handwired/onekey/keymaps/battery/rules.mk new file mode 100644 index 0000000000..06908179ae --- /dev/null +++ b/keyboards/handwired/onekey/keymaps/battery/rules.mk @@ -0,0 +1 @@ +BATTERY_DRIVER_REQUIRED = yes diff --git a/keyboards/handwired/onekey/keymaps/via_ci/config.h b/keyboards/handwired/onekey/keymaps/via_ci/config.h new file mode 100644 index 0000000000..ec6f1e1ec0 --- /dev/null +++ b/keyboards/handwired/onekey/keymaps/via_ci/config.h @@ -0,0 +1,4 @@ +// Copyright 2025 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once +#define TRANSIENT_EEPROM_SIZE 160 diff --git a/keyboards/handwired/onekey/keymaps/via_ci/keymap.c b/keyboards/handwired/onekey/keymaps/via_ci/keymap.c new file mode 100644 index 0000000000..8261fc6329 --- /dev/null +++ b/keyboards/handwired/onekey/keymaps/via_ci/keymap.c @@ -0,0 +1,30 @@ +// Copyright 2025 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#include QMK_KEYBOARD_H + +enum custom_keycodes { + KC_HELLO = SAFE_RANGE, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + LAYOUT_ortho_1x1(KC_HELLO) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case KC_HELLO: + if (record->event.pressed) { + send_string_P("Hello world!"); + } + return false; + } + return true; +} + +void keyboard_post_init_user(void) { + // Customise these values to desired behaviour + debug_enable=true; + debug_matrix=true; + //debug_keyboard=true; + //debug_mouse=true; +} diff --git a/keyboards/handwired/onekey/keymaps/via_ci/keymap.json b/keyboards/handwired/onekey/keymaps/via_ci/keymap.json new file mode 100644 index 0000000000..edb78b5742 --- /dev/null +++ b/keyboards/handwired/onekey/keymaps/via_ci/keymap.json @@ -0,0 +1,7 @@ +{ + "config": { + "features": { + "via": true + } + } +} diff --git a/keyboards/handwired/onekey/teensy_32/rules.mk b/keyboards/handwired/onekey/teensy_32/rules.mk new file mode 100644 index 0000000000..d5978ba6f5 --- /dev/null +++ b/keyboards/handwired/onekey/teensy_32/rules.mk @@ -0,0 +1 @@ +EEPROM_DRIVER = transient diff --git a/keyboards/handwired/onekey/teensy_lc/rules.mk b/keyboards/handwired/onekey/teensy_lc/rules.mk index abd2f7fce9..d1a53e95d7 100644 --- a/keyboards/handwired/onekey/teensy_lc/rules.mk +++ b/keyboards/handwired/onekey/teensy_lc/rules.mk @@ -1,2 +1,2 @@ USE_CHIBIOS_CONTRIB = yes - +EEPROM_DRIVER = transient diff --git a/keyboards/handwired/orbweaver/keyboard.json b/keyboards/handwired/orbweaver/keyboard.json index 5ba08dfc2d..73baa9a21d 100644 --- a/keyboards/handwired/orbweaver/keyboard.json +++ b/keyboards/handwired/orbweaver/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/handwired/ortho5x13/keyboard.json b/keyboards/handwired/ortho5x13/keyboard.json index 23591b5046..6dea79ab92 100644 --- a/keyboards/handwired/ortho5x13/keyboard.json +++ b/keyboards/handwired/ortho5x13/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ortho 5x13", "manufacturer": "Hexwire", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xBB80", diff --git a/keyboards/handwired/ortho5x14/keyboard.json b/keyboards/handwired/ortho5x14/keyboard.json index 1e6828190b..f0b7e923c1 100644 --- a/keyboards/handwired/ortho5x14/keyboard.json +++ b/keyboards/handwired/ortho5x14/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ortho5 x14", "manufacturer": "MPInc", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xBB80", @@ -11,7 +10,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/ortho_brass/keyboard.json b/keyboards/handwired/ortho_brass/keyboard.json index 5cd01b1f6d..2f0fe7b685 100644 --- a/keyboards/handwired/ortho_brass/keyboard.json +++ b/keyboards/handwired/ortho_brass/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ortho Brass", "manufacturer": "BifbofII", - "url": "", "maintainer": "BifbofII", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/ortho_brass/keymaps/default/keymap.c b/keyboards/handwired/ortho_brass/keymaps/default/keymap.c index fc43167211..47f731c2c9 100644 --- a/keyboards/handwired/ortho_brass/keymaps/default/keymap.c +++ b/keyboards/handwired/ortho_brass/keymaps/default/keymap.c @@ -182,9 +182,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (!eeconfig_is_enabled()) { eeconfig_init(); } - keymap_config.raw = eeconfig_read_keymap(); + eeconfig_read_keymap(&keymap_config); keymap_config.nkro = 1; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } return false; break; diff --git a/keyboards/handwired/osborne1/keyboard.json b/keyboards/handwired/osborne1/keyboard.json index 8cbcb3cc8b..567d4638b5 100644 --- a/keyboards/handwired/osborne1/keyboard.json +++ b/keyboards/handwired/osborne1/keyboard.json @@ -6,7 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": false, "mousekey": false, @@ -21,7 +20,6 @@ "rows": ["D0", "B7", "B5", "C6", "D1", "B6", "D7", "D6"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x239A", diff --git a/keyboards/handwired/p65rgb/keyboard.json b/keyboards/handwired/p65rgb/keyboard.json index b80a1e7f49..d2ee16e2c1 100644 --- a/keyboards/handwired/p65rgb/keyboard.json +++ b/keyboards/handwired/p65rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "p65rgb", "manufacturer": "marhalloweenvt", - "url": "", "maintainer": "marhalloweenvt", "usb": { "vid": "0xFEED", @@ -164,8 +163,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/handwired/petruziamini/keyboard.json b/keyboards/handwired/petruziamini/keyboard.json index 1d864d5dbb..1d0686aaa1 100644 --- a/keyboards/handwired/petruziamini/keyboard.json +++ b/keyboards/handwired/petruziamini/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/handwired/phantagom/baragon/keyboard.json b/keyboards/handwired/phantagom/baragon/keyboard.json index 390f114dd9..3cda89fa2a 100644 --- a/keyboards/handwired/phantagom/baragon/keyboard.json +++ b/keyboards/handwired/phantagom/baragon/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/handwired/phantagom/varan/keyboard.json b/keyboards/handwired/phantagom/varan/keyboard.json index a767d45de0..b852098769 100644 --- a/keyboards/handwired/phantagom/varan/keyboard.json +++ b/keyboards/handwired/phantagom/varan/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/handwired/pilcrow/keyboard.json b/keyboards/handwired/pilcrow/keyboard.json index b44a4e2d3d..f490ac33b6 100644 --- a/keyboards/handwired/pilcrow/keyboard.json +++ b/keyboards/handwired/pilcrow/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "pilcrow", "manufacturer": "Unknown", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/polly40/keyboard.json b/keyboards/handwired/polly40/keyboard.json index fde1b77aab..8eacb238c1 100644 --- a/keyboards/handwired/polly40/keyboard.json +++ b/keyboards/handwired/polly40/keyboard.json @@ -19,8 +19,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true }, "qmk": { diff --git a/keyboards/handwired/postageboard/info.json b/keyboards/handwired/postageboard/info.json index 2f4e674d59..b34c2b3fbe 100644 --- a/keyboards/handwired/postageboard/info.json +++ b/keyboards/handwired/postageboard/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Postage Board", "manufacturer": "LifeIsOnTheWire", - "url": "", "maintainer": "LifeIsOnTheWire", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/prime_exl/keyboard.json b/keyboards/handwired/prime_exl/keyboard.json index 13993a61b4..656abe14ec 100644 --- a/keyboards/handwired/prime_exl/keyboard.json +++ b/keyboards/handwired/prime_exl/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/prime_exl_plus/keyboard.json b/keyboards/handwired/prime_exl_plus/keyboard.json index a234bceb02..7e59b917a7 100644 --- a/keyboards/handwired/prime_exl_plus/keyboard.json +++ b/keyboards/handwired/prime_exl_plus/keyboard.json @@ -32,8 +32,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/handwired/promethium/config.h b/keyboards/handwired/promethium/config.h index 806726b5eb..974a4f951f 100644 --- a/keyboards/handwired/promethium/config.h +++ b/keyboards/handwired/promethium/config.h @@ -63,9 +63,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. //#define NO_ACTION_ONESHOT #define PS2_MOUSE_INIT_DELAY 2000 -#define BATTERY_POLL 30000 -#define MAX_VOLTAGE 4.2 -#define MIN_VOLTAGE 3.2 + +#define BATTERY_PIN B5 #ifndef __ASSEMBLER__ // assembler doesn't like enum in .h file enum led_sequence { diff --git a/keyboards/handwired/promethium/keyboard.json b/keyboards/handwired/promethium/keyboard.json index 6ee1ed8ca1..fa72908039 100644 --- a/keyboards/handwired/promethium/keyboard.json +++ b/keyboards/handwired/promethium/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Promethium", "manufacturer": "Priyadi", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x17EF", diff --git a/keyboards/handwired/promethium/promethium.c b/keyboards/handwired/promethium/promethium.c index 63139ac09d..c94a27a4de 100644 --- a/keyboards/handwired/promethium/promethium.c +++ b/keyboards/handwired/promethium/promethium.c @@ -1,16 +1,15 @@ -#include "promethium.h" -#include "analog.h" +#include "keyboard.h" #include "timer.h" -#include "matrix.h" -#include "bluefruit_le.h" +#include "battery.h" -// cubic fit {3.3, 0}, {3.5, 2.9}, {3.6, 5}, {3.7, 8.6}, {3.8, 36}, {3.9, 62}, {4.0, 73}, {4.05, 83}, {4.1, 89}, {4.15, 94}, {4.2, 100} +#ifndef BATTERY_POLL +# define BATTERY_POLL 30000 +#endif uint8_t battery_level(void) { - float voltage = bluefruit_le_read_battery_voltage() * 2 * 3.3 / 1024; - if (voltage < MIN_VOLTAGE) return 0; - if (voltage > MAX_VOLTAGE) return 255; - return (voltage - MIN_VOLTAGE) / (MAX_VOLTAGE - MIN_VOLTAGE) * 255; + // maintain legacy behaviour and scale 0-100 percent to 0-255 + uint16_t percent = battery_get_percent(); + return (percent * 255) / 100; } __attribute__ ((weak)) diff --git a/keyboards/handwired/promethium/rules.mk b/keyboards/handwired/promethium/rules.mk index 7f20880066..4012f8ca29 100644 --- a/keyboards/handwired/promethium/rules.mk +++ b/keyboards/handwired/promethium/rules.mk @@ -5,7 +5,7 @@ PS2_DRIVER = interrupt CUSTOM_MATRIX = yes WS2812_DRIVER_REQUIRED = yes -ANALOG_DRIVER_REQUIRED = yes +BATTERY_DRIVER_REQUIRED = yes SRC += rgbsps.c SRC += matrix.c diff --git a/keyboards/handwired/protype/keyboard.json b/keyboards/handwired/protype/keyboard.json index 69f196abc4..dbbc17ba86 100644 --- a/keyboards/handwired/protype/keyboard.json +++ b/keyboards/handwired/protype/keyboard.json @@ -15,7 +15,6 @@ "cols": ["GP12", "GP9", "GP10", "GP0", "GP1", "GP5", "GP6", "GP2", "GP3", "GP4"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0xB7D7", diff --git a/keyboards/handwired/pteron/keyboard.json b/keyboards/handwired/pteron/keyboard.json index 7aa2470cc1..c79bd9a655 100644 --- a/keyboards/handwired/pteron/keyboard.json +++ b/keyboards/handwired/pteron/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Pteron", "manufacturer": "QMK", - "url": "", "maintainer": "FSund", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/pteron38/keyboard.json b/keyboards/handwired/pteron38/keyboard.json index 266aefec1f..2328977ae3 100644 --- a/keyboards/handwired/pteron38/keyboard.json +++ b/keyboards/handwired/pteron38/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Pteron38", "manufacturer": "QMK", - "url": "", "maintainer": "fidelcoria", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/pteron44/keyboard.json b/keyboards/handwired/pteron44/keyboard.json index 26321317eb..0a4f8605c8 100644 --- a/keyboards/handwired/pteron44/keyboard.json +++ b/keyboards/handwired/pteron44/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Pteron44", "manufacturer": "QMK", - "url": "", "maintainer": "fidelcoria", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/qc60/proto/keyboard.json b/keyboards/handwired/qc60/proto/keyboard.json index 810df8b7ae..92603c33dd 100644 --- a/keyboards/handwired/qc60/proto/keyboard.json +++ b/keyboards/handwired/qc60/proto/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "QC60", "manufacturer": "PeiorisBoards", - "url": "", "maintainer": "coarse", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/handwired/rabijl/rotary_numpad/keyboard.json b/keyboards/handwired/rabijl/rotary_numpad/keyboard.json index dafeec0fc0..75f178690b 100644 --- a/keyboards/handwired/rabijl/rotary_numpad/keyboard.json +++ b/keyboards/handwired/rabijl/rotary_numpad/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/handwired/rd_61_qmk/keyboard.json b/keyboards/handwired/rd_61_qmk/keyboard.json index be07d95924..bca23af959 100644 --- a/keyboards/handwired/rd_61_qmk/keyboard.json +++ b/keyboards/handwired/rd_61_qmk/keyboard.json @@ -52,7 +52,6 @@ "led_count": 1, "saturation_steps": 8 }, - "url": "", "ws2812": { "pin": "C7" }, diff --git a/keyboards/handwired/retro_refit/keyboard.json b/keyboards/handwired/retro_refit/keyboard.json index 7acdb48b44..73e747fffa 100644 --- a/keyboards/handwired/retro_refit/keyboard.json +++ b/keyboards/handwired/retro_refit/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "retro_refit", "manufacturer": "Nobody", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/riblee_f401/keyboard.json b/keyboards/handwired/riblee_f401/keyboard.json index 53fc613760..6fc3fbe474 100644 --- a/keyboards/handwired/riblee_f401/keyboard.json +++ b/keyboards/handwired/riblee_f401/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Handwired F401", "manufacturer": "Riblee", - "url": "", "maintainer": "riblee", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/riblee_f411/keyboard.json b/keyboards/handwired/riblee_f411/keyboard.json index 47d6349ba7..1688220573 100644 --- a/keyboards/handwired/riblee_f411/keyboard.json +++ b/keyboards/handwired/riblee_f411/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Handwired F411", "manufacturer": "Riblee", - "url": "", "maintainer": "riblee", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/riblee_split/keyboard.json b/keyboards/handwired/riblee_split/keyboard.json index f24dbe2ce6..6006f0e4c3 100644 --- a/keyboards/handwired/riblee_split/keyboard.json +++ b/keyboards/handwired/riblee_split/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["A4", "A3", "A2", "A1", "A0"] }, "development_board": "blackpill_f411", - "url": "", "usb": { "device_version": "1.0.0", "vid": "0xFEED", diff --git a/keyboards/handwired/rs60/keyboard.json b/keyboards/handwired/rs60/keyboard.json index 1536474343..e2b59dc15f 100644 --- a/keyboards/handwired/rs60/keyboard.json +++ b/keyboards/handwired/rs60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "rs60", "manufacturer": "rs", - "url": "", "maintainer": "rs", "usb": { "vid": "0xFEED", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, "console": true, "extrakey": false, "mousekey": false, diff --git a/keyboards/handwired/scottokeebs/scotto34/keyboard.json b/keyboards/handwired/scottokeebs/scotto34/keyboard.json index 6fcce38d70..255c33f2cd 100644 --- a/keyboards/handwired/scottokeebs/scotto34/keyboard.json +++ b/keyboards/handwired/scottokeebs/scotto34/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scotto36/keyboard.json b/keyboards/handwired/scottokeebs/scotto36/keyboard.json index fe8ecb6629..79361b4fe8 100644 --- a/keyboards/handwired/scottokeebs/scotto36/keyboard.json +++ b/keyboards/handwired/scottokeebs/scotto36/keyboard.json @@ -6,8 +6,6 @@ "development_board": "promicro", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scotto37/keyboard.json b/keyboards/handwired/scottokeebs/scotto37/keyboard.json index 579840e8d1..4e7cb06af9 100644 --- a/keyboards/handwired/scottokeebs/scotto37/keyboard.json +++ b/keyboards/handwired/scottokeebs/scotto37/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scotto40/keyboard.json b/keyboards/handwired/scottokeebs/scotto40/keyboard.json index b10f677c4d..722ff7f6b0 100644 --- a/keyboards/handwired/scottokeebs/scotto40/keyboard.json +++ b/keyboards/handwired/scottokeebs/scotto40/keyboard.json @@ -6,8 +6,6 @@ "development_board": "promicro", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scotto61/keyboard.json b/keyboards/handwired/scottokeebs/scotto61/keyboard.json index cf321a2e97..31510f5b86 100644 --- a/keyboards/handwired/scottokeebs/scotto61/keyboard.json +++ b/keyboards/handwired/scottokeebs/scotto61/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scotto9/keyboard.json b/keyboards/handwired/scottokeebs/scotto9/keyboard.json index a42d206300..148c26af2c 100644 --- a/keyboards/handwired/scottokeebs/scotto9/keyboard.json +++ b/keyboards/handwired/scottokeebs/scotto9/keyboard.json @@ -6,8 +6,6 @@ "development_board": "promicro", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scottoalp/keyboard.json b/keyboards/handwired/scottokeebs/scottoalp/keyboard.json index 5bce6ae62c..d3473c7b22 100644 --- a/keyboards/handwired/scottokeebs/scottoalp/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottoalp/keyboard.json @@ -12,8 +12,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scottocmd/keyboard.json b/keyboards/handwired/scottokeebs/scottocmd/keyboard.json index a26b95c1db..3dac375a3c 100644 --- a/keyboards/handwired/scottokeebs/scottocmd/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottocmd/keyboard.json @@ -6,8 +6,6 @@ "development_board": "promicro", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/handwired/scottokeebs/scottodeck/keyboard.json b/keyboards/handwired/scottokeebs/scottodeck/keyboard.json index 0607918cae..e8f4f60c21 100644 --- a/keyboards/handwired/scottokeebs/scottodeck/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottodeck/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/scottokeebs/scottoergo/keyboard.json b/keyboards/handwired/scottokeebs/scottoergo/keyboard.json index 4f6d955271..137aea987d 100644 --- a/keyboards/handwired/scottokeebs/scottoergo/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottoergo/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scottofly/keyboard.json b/keyboards/handwired/scottokeebs/scottofly/keyboard.json index 5255a5baf4..2f185fdd5c 100644 --- a/keyboards/handwired/scottokeebs/scottofly/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottofly/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scottofrog/keyboard.json b/keyboards/handwired/scottokeebs/scottofrog/keyboard.json index 147f2d8aa7..50842232d7 100644 --- a/keyboards/handwired/scottokeebs/scottofrog/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottofrog/keyboard.json @@ -6,8 +6,6 @@ "development_board": "promicro", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scottogame/keyboard.json b/keyboards/handwired/scottokeebs/scottogame/keyboard.json index 912cfdfaaa..9464eee51d 100644 --- a/keyboards/handwired/scottokeebs/scottogame/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottogame/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/handwired/scottokeebs/scottohazard/keyboard.json b/keyboards/handwired/scottokeebs/scottohazard/keyboard.json index 45adcec3c8..01178e2f24 100644 --- a/keyboards/handwired/scottokeebs/scottohazard/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottohazard/keyboard.json @@ -9,8 +9,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scottoinvader/keyboard.json b/keyboards/handwired/scottokeebs/scottoinvader/keyboard.json index 2a9054cd4f..af8334e0fa 100644 --- a/keyboards/handwired/scottokeebs/scottoinvader/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottoinvader/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scottokatana/keyboard.json b/keyboards/handwired/scottokeebs/scottokatana/keyboard.json index 4b5779b6d9..6cf65818b6 100644 --- a/keyboards/handwired/scottokeebs/scottokatana/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottokatana/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scottolong/keyboard.json b/keyboards/handwired/scottokeebs/scottolong/keyboard.json index 156772d213..8df234640c 100644 --- a/keyboards/handwired/scottokeebs/scottolong/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottolong/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scottomacrodeck/keyboard.json b/keyboards/handwired/scottokeebs/scottomacrodeck/keyboard.json index f238564c7f..c623547f67 100644 --- a/keyboards/handwired/scottokeebs/scottomacrodeck/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottomacrodeck/keyboard.json @@ -5,8 +5,6 @@ "development_board": "promicro", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scottomouse/keyboard.json b/keyboards/handwired/scottokeebs/scottomouse/keyboard.json index 36f92f48e2..96e4c7707c 100644 --- a/keyboards/handwired/scottokeebs/scottomouse/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottomouse/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scottonum/keyboard.json b/keyboards/handwired/scottokeebs/scottonum/keyboard.json index f71f75d62b..3a8d87f5a4 100644 --- a/keyboards/handwired/scottokeebs/scottonum/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottonum/keyboard.json @@ -6,8 +6,6 @@ "development_board": "promicro", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scottoslant/keyboard.json b/keyboards/handwired/scottokeebs/scottoslant/keyboard.json index 8c9de39cd6..bb1282fe12 100644 --- a/keyboards/handwired/scottokeebs/scottoslant/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottoslant/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scottosplit/keyboard.json b/keyboards/handwired/scottokeebs/scottosplit/keyboard.json index 66d24db0cd..246c563f1e 100644 --- a/keyboards/handwired/scottokeebs/scottosplit/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottosplit/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scottostarter/keyboard.json b/keyboards/handwired/scottokeebs/scottostarter/keyboard.json index 5e6a70114b..c113efd897 100644 --- a/keyboards/handwired/scottokeebs/scottostarter/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottostarter/keyboard.json @@ -6,8 +6,6 @@ "development_board": "promicro", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/scottokeebs/scottowing/keyboard.json b/keyboards/handwired/scottokeebs/scottowing/keyboard.json index 91bfaa1f92..6163e4ad1d 100644 --- a/keyboards/handwired/scottokeebs/scottowing/keyboard.json +++ b/keyboards/handwired/scottokeebs/scottowing/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/handwired/sejin_eat1010r2/keyboard.json b/keyboards/handwired/sejin_eat1010r2/keyboard.json index f2cfef37a8..5cf17d548a 100644 --- a/keyboards/handwired/sejin_eat1010r2/keyboard.json +++ b/keyboards/handwired/sejin_eat1010r2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "EAT-1010R2", "manufacturer": "Sejin", - "url": "", "maintainer": "DmNosachev", "usb": { "vid": "0x515A", @@ -22,8 +21,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/sick68/keyboard.json b/keyboards/handwired/sick68/keyboard.json index 339484791f..81a9577f36 100644 --- a/keyboards/handwired/sick68/keyboard.json +++ b/keyboards/handwired/sick68/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "sick68", "manufacturer": "umbynos", - "url": "", "maintainer": "umbynos", "usb": { "vid": "0x5E68", diff --git a/keyboards/handwired/sick_pad/keyboard.json b/keyboards/handwired/sick_pad/keyboard.json index ce76294a0d..68773fea2d 100644 --- a/keyboards/handwired/sick_pad/keyboard.json +++ b/keyboards/handwired/sick_pad/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false diff --git a/keyboards/handwired/skakunm_dactyl/keyboard.json b/keyboards/handwired/skakunm_dactyl/keyboard.json index cc6f70b482..c004c75c71 100644 --- a/keyboards/handwired/skakunm_dactyl/keyboard.json +++ b/keyboards/handwired/skakunm_dactyl/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dactyl Min (3x5_5)", "manufacturer": "skakunm", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,7 +10,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false @@ -29,7 +27,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "processor": "atmega32u4", "bootloader": "caterina", diff --git a/keyboards/handwired/slash/keyboard.json b/keyboards/handwired/slash/keyboard.json index a682624d8e..ea1248c48e 100644 --- a/keyboards/handwired/slash/keyboard.json +++ b/keyboards/handwired/slash/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Slash", "manufacturer": "asdftemp", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/snatchpad/keyboard.json b/keyboards/handwired/snatchpad/keyboard.json index d06fe2c003..6f6d9aafec 100644 --- a/keyboards/handwired/snatchpad/keyboard.json +++ b/keyboards/handwired/snatchpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "snatchpad", "manufacturer": "xia0", - "url": "", "maintainer": "xia0", "usb": { "vid": "0x6662", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "key_lock": true, diff --git a/keyboards/handwired/sono1/info.json b/keyboards/handwired/sono1/info.json index 85e86051c3..bf274924f6 100644 --- a/keyboards/handwired/sono1/info.json +++ b/keyboards/handwired/sono1/info.json @@ -1,11 +1,9 @@ { "keyboard_name": "Sono1", "manufacturer": "ASKeyboard", - "url": "", "maintainer": "DmNosachev", "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/space_oddity/keyboard.json b/keyboards/handwired/space_oddity/keyboard.json index ca4e10d16b..98600b4770 100644 --- a/keyboards/handwired/space_oddity/keyboard.json +++ b/keyboards/handwired/space_oddity/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Space Oddity", "manufacturer": "James Taylor", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dynamic_macro": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/split65/promicro/keyboard.json b/keyboards/handwired/split65/promicro/keyboard.json index 8b50ea8429..40d0e8f43e 100644 --- a/keyboards/handwired/split65/promicro/keyboard.json +++ b/keyboards/handwired/split65/promicro/keyboard.json @@ -1,8 +1,6 @@ { "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false, diff --git a/keyboards/handwired/split89/keyboard.json b/keyboards/handwired/split89/keyboard.json index fdd092745f..8635f01d35 100644 --- a/keyboards/handwired/split89/keyboard.json +++ b/keyboards/handwired/split89/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/splittest/info.json b/keyboards/handwired/splittest/info.json index 07cac23aad..bbfe538255 100644 --- a/keyboards/handwired/splittest/info.json +++ b/keyboards/handwired/splittest/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Split Tester", "manufacturer": "Keebio", - "url": "", "maintainer": "nooges", "usb": { "vid": "0xCB10", diff --git a/keyboards/handwired/splittest/promicro/keyboard.json b/keyboards/handwired/splittest/promicro/keyboard.json index 8aca1c3de7..93f09a47ca 100644 --- a/keyboards/handwired/splittest/promicro/keyboard.json +++ b/keyboards/handwired/splittest/promicro/keyboard.json @@ -8,7 +8,9 @@ "handedness": { "pin": "F6" }, - "soft_serial_pin": "D1" + "serial": { + "pin": "D1" + } }, "ws2812": { "pin": "D3" diff --git a/keyboards/handwired/splittest/teensy_2/keyboard.json b/keyboards/handwired/splittest/teensy_2/keyboard.json index c10b20a173..78d6c5f9a3 100644 --- a/keyboards/handwired/splittest/teensy_2/keyboard.json +++ b/keyboards/handwired/splittest/teensy_2/keyboard.json @@ -8,7 +8,9 @@ "handedness": { "pin": "F0" }, - "soft_serial_pin": "D1" + "serial": { + "pin": "D1" + } }, "ws2812": { "pin": "D3" diff --git a/keyboards/handwired/starrykeebs/dude09/keyboard.json b/keyboards/handwired/starrykeebs/dude09/keyboard.json index 6e91adeb1e..3a13e66baa 100644 --- a/keyboards/handwired/starrykeebs/dude09/keyboard.json +++ b/keyboards/handwired/starrykeebs/dude09/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true }, diff --git a/keyboards/handwired/steamvan/rev1/keyboard.json b/keyboards/handwired/steamvan/rev1/keyboard.json index 9c4593bca7..06cfd2cef6 100644 --- a/keyboards/handwired/steamvan/rev1/keyboard.json +++ b/keyboards/handwired/steamvan/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "SteamVan rev1", "manufacturer": "John M Daly", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "leader": true, "mousekey": true, diff --git a/keyboards/handwired/stef9998/split_5x7/rev1/keyboard.json b/keyboards/handwired/stef9998/split_5x7/rev1/keyboard.json index 5f524ea445..45c5a057bc 100644 --- a/keyboards/handwired/stef9998/split_5x7/rev1/keyboard.json +++ b/keyboards/handwired/stef9998/split_5x7/rev1/keyboard.json @@ -1,6 +1,5 @@ { "keyboard_name": "Split_5x7", - "url": "", "maintainer": "stef9998", "manufacturer": "Stef9998", "usb": { @@ -11,7 +10,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/sticc14/keyboard.json b/keyboards/handwired/sticc14/keyboard.json index b3fb4a06e5..4fd89780ee 100644 --- a/keyboards/handwired/sticc14/keyboard.json +++ b/keyboards/handwired/sticc14/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Sticc14", "manufacturer": "u/ergorius", - "url": "", "maintainer": "erkhal", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/stream_cheap/2x3/keyboard.json b/keyboards/handwired/stream_cheap/2x3/keyboard.json index ff62fa8a27..ff9d23b215 100644 --- a/keyboards/handwired/stream_cheap/2x3/keyboard.json +++ b/keyboards/handwired/stream_cheap/2x3/keyboard.json @@ -12,8 +12,6 @@ "bootloader": "caterina", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/stream_cheap/2x4/keyboard.json b/keyboards/handwired/stream_cheap/2x4/keyboard.json index 3f058cfbe4..5fa54354a9 100644 --- a/keyboards/handwired/stream_cheap/2x4/keyboard.json +++ b/keyboards/handwired/stream_cheap/2x4/keyboard.json @@ -15,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/stream_cheap/2x5/keyboard.json b/keyboards/handwired/stream_cheap/2x5/keyboard.json index 8e2de67e62..b9abe2c01f 100644 --- a/keyboards/handwired/stream_cheap/2x5/keyboard.json +++ b/keyboards/handwired/stream_cheap/2x5/keyboard.json @@ -12,8 +12,6 @@ "bootloader": "caterina", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/swiftrax/astro65/keyboard.json b/keyboards/handwired/swiftrax/astro65/keyboard.json index c72c0e4b3d..bc33d12159 100644 --- a/keyboards/handwired/swiftrax/astro65/keyboard.json +++ b/keyboards/handwired/swiftrax/astro65/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/swiftrax/bebol/keyboard.json b/keyboards/handwired/swiftrax/bebol/keyboard.json index 242d1b99a9..0a665a0ae7 100644 --- a/keyboards/handwired/swiftrax/bebol/keyboard.json +++ b/keyboards/handwired/swiftrax/bebol/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/swiftrax/beegboy/keyboard.json b/keyboards/handwired/swiftrax/beegboy/keyboard.json index 75edd62c1e..c81c897c96 100644 --- a/keyboards/handwired/swiftrax/beegboy/keyboard.json +++ b/keyboards/handwired/swiftrax/beegboy/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/handwired/swiftrax/bumblebee/keyboard.json b/keyboards/handwired/swiftrax/bumblebee/keyboard.json index 6dec52b59a..3a0ba874c7 100644 --- a/keyboards/handwired/swiftrax/bumblebee/keyboard.json +++ b/keyboards/handwired/swiftrax/bumblebee/keyboard.json @@ -16,8 +16,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/swiftrax/cowfish/keyboard.json b/keyboards/handwired/swiftrax/cowfish/keyboard.json index efa8c39d19..99bb061568 100644 --- a/keyboards/handwired/swiftrax/cowfish/keyboard.json +++ b/keyboards/handwired/swiftrax/cowfish/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "CowFish", "manufacturer": "Swiftrax", - "url": "", "maintainer": "swiftrax", "usb": { "vid": "0x04D8", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/handwired/swiftrax/digicarp65/keyboard.json b/keyboards/handwired/swiftrax/digicarp65/keyboard.json index 59442c33ec..6a401c0a52 100644 --- a/keyboards/handwired/swiftrax/digicarp65/keyboard.json +++ b/keyboards/handwired/swiftrax/digicarp65/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/swiftrax/digicarpice/keyboard.json b/keyboards/handwired/swiftrax/digicarpice/keyboard.json index 6d857f5998..32cd6615be 100644 --- a/keyboards/handwired/swiftrax/digicarpice/keyboard.json +++ b/keyboards/handwired/swiftrax/digicarpice/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/swiftrax/equator/keyboard.json b/keyboards/handwired/swiftrax/equator/keyboard.json index 6a539c786a..12434002e4 100644 --- a/keyboards/handwired/swiftrax/equator/keyboard.json +++ b/keyboards/handwired/swiftrax/equator/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/swiftrax/glacier/keyboard.json b/keyboards/handwired/swiftrax/glacier/keyboard.json index d455cbe266..f3d201a095 100644 --- a/keyboards/handwired/swiftrax/glacier/keyboard.json +++ b/keyboards/handwired/swiftrax/glacier/keyboard.json @@ -27,8 +27,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/handwired/swiftrax/joypad/keyboard.json b/keyboards/handwired/swiftrax/joypad/keyboard.json index b894dcbe54..63f8a7a92b 100644 --- a/keyboards/handwired/swiftrax/joypad/keyboard.json +++ b/keyboards/handwired/swiftrax/joypad/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/handwired/swiftrax/koalafications/keyboard.json b/keyboards/handwired/swiftrax/koalafications/keyboard.json index 78686a8e70..c01c1da39a 100644 --- a/keyboards/handwired/swiftrax/koalafications/keyboard.json +++ b/keyboards/handwired/swiftrax/koalafications/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/handwired/swiftrax/nodu/keyboard.json b/keyboards/handwired/swiftrax/nodu/keyboard.json index 47c604c35f..ce9aad54e0 100644 --- a/keyboards/handwired/swiftrax/nodu/keyboard.json +++ b/keyboards/handwired/swiftrax/nodu/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/swiftrax/pandamic/keyboard.json b/keyboards/handwired/swiftrax/pandamic/keyboard.json index 9fce9c80c5..b6b4fa4d66 100644 --- a/keyboards/handwired/swiftrax/pandamic/keyboard.json +++ b/keyboards/handwired/swiftrax/pandamic/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/handwired/swiftrax/the_galleon/keyboard.json b/keyboards/handwired/swiftrax/the_galleon/keyboard.json index 1d87ce1893..63acbf0a20 100644 --- a/keyboards/handwired/swiftrax/the_galleon/keyboard.json +++ b/keyboards/handwired/swiftrax/the_galleon/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/handwired/swiftrax/unsplit/keyboard.json b/keyboards/handwired/swiftrax/unsplit/keyboard.json index bb18c0dea8..9c5b7d1a63 100644 --- a/keyboards/handwired/swiftrax/unsplit/keyboard.json +++ b/keyboards/handwired/swiftrax/unsplit/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/swiftrax/walter/keyboard.json b/keyboards/handwired/swiftrax/walter/keyboard.json index cbf603a4ff..b766cf87d1 100644 --- a/keyboards/handwired/swiftrax/walter/keyboard.json +++ b/keyboards/handwired/swiftrax/walter/keyboard.json @@ -28,8 +28,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/symmetric70_proto/info.json b/keyboards/handwired/symmetric70_proto/info.json index ecd0d38c24..e0bd2f9c91 100644 --- a/keyboards/handwired/symmetric70_proto/info.json +++ b/keyboards/handwired/symmetric70_proto/info.json @@ -1,6 +1,5 @@ { "manufacturer": "mtei", - "url": "", "maintainer": "mtei", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/symmetric70_proto/promicro/info.json b/keyboards/handwired/symmetric70_proto/promicro/info.json index f143f518eb..43ecb4c1c0 100644 --- a/keyboards/handwired/symmetric70_proto/promicro/info.json +++ b/keyboards/handwired/symmetric70_proto/promicro/info.json @@ -12,7 +12,9 @@ } }, "split": { - "soft_serial_pin": "D0" + "serial": { + "pin": "D0" + } }, "processor": "atmega32u4", "bootloader": "caterina" diff --git a/keyboards/handwired/symmetry60/keyboard.json b/keyboards/handwired/symmetry60/keyboard.json index 40afdf88c9..86b7fe1d8a 100644 --- a/keyboards/handwired/symmetry60/keyboard.json +++ b/keyboards/handwired/symmetry60/keyboard.json @@ -1,7 +1,6 @@ { "Keyboard_name": "Symmetry60", "manufacturer": "Marhalloweenvt", - "url": "", "maintainer": "marhalloweenvt", "usb": { "vid": "0xFEED", @@ -33,7 +32,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/t111/keyboard.json b/keyboards/handwired/t111/keyboard.json index f65a3f087e..d90244c94c 100644 --- a/keyboards/handwired/t111/keyboard.json +++ b/keyboards/handwired/t111/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "T111", "manufacturer": "FUJITSU", - "url": "", "maintainer": "DmNosachev", "usb": { "vid": "0xFEED", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/tennie/keyboard.json b/keyboards/handwired/tennie/keyboard.json index 05143c1cb0..2b56ae379a 100644 --- a/keyboards/handwired/tennie/keyboard.json +++ b/keyboards/handwired/tennie/keyboard.json @@ -32,7 +32,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/handwired/terminus_mini/keyboard.json b/keyboards/handwired/terminus_mini/keyboard.json index 09346c81bf..0d495bf55b 100644 --- a/keyboards/handwired/terminus_mini/keyboard.json +++ b/keyboards/handwired/terminus_mini/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Terminus Mini", "manufacturer": "James Morgan", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -15,7 +14,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/tkk/keyboard.json b/keyboards/handwired/tkk/keyboard.json index 91e495081f..5dd21ef800 100644 --- a/keyboards/handwired/tkk/keyboard.json +++ b/keyboards/handwired/tkk/keyboard.json @@ -5,8 +5,6 @@ "bootloader": "halfkay", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ ] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0000", diff --git a/keyboards/handwired/trackpoint/keyboard.json b/keyboards/handwired/trackpoint/keyboard.json index 09fadd1dc6..1cd10dbb47 100644 --- a/keyboards/handwired/trackpoint/keyboard.json +++ b/keyboards/handwired/trackpoint/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Trackpoint Demo", "manufacturer": "QMK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x1234", diff --git a/keyboards/handwired/tractyl_manuform/4x6_right/keyboard.json b/keyboards/handwired/tractyl_manuform/4x6_right/keyboard.json index e5730a4586..cc651bec95 100644 --- a/keyboards/handwired/tractyl_manuform/4x6_right/keyboard.json +++ b/keyboards/handwired/tractyl_manuform/4x6_right/keyboard.json @@ -1,6 +1,5 @@ { "keyboard_name": "Tractyl Manuform (4x6)", - "url": "", "maintainer": "drashna", "usb": { "pid": "0x3537", @@ -22,7 +21,9 @@ "handedness": { "pin": "A6" }, - "soft_serial_pin": "D3", + "serial": { + "pin": "D3" + }, "bootmagic": { "matrix": [4, 5] } diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/arduinomicro/keyboard.json b/keyboards/handwired/tractyl_manuform/5x6_right/arduinomicro/keyboard.json index df810f2881..bd4c41e17b 100644 --- a/keyboards/handwired/tractyl_manuform/5x6_right/arduinomicro/keyboard.json +++ b/keyboards/handwired/tractyl_manuform/5x6_right/arduinomicro/keyboard.json @@ -6,7 +6,9 @@ }, "diode_direction": "COL2ROW", "split": { - "soft_serial_pin": "D0", + "serial": { + "pin": "D0" + }, "matrix_pins": { "right": { "cols": ["D6", "D7", "B4", "D3", "C6", "C7"], diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/elite_c/keyboard.json b/keyboards/handwired/tractyl_manuform/5x6_right/elite_c/keyboard.json index e6c0e42bde..739aad07ba 100644 --- a/keyboards/handwired/tractyl_manuform/5x6_right/elite_c/keyboard.json +++ b/keyboards/handwired/tractyl_manuform/5x6_right/elite_c/keyboard.json @@ -11,7 +11,9 @@ ] }, "split": { - "soft_serial_pin": "D2" + "serial": { + "pin": "D2" + } }, "ws2812": { "pin": "D3" diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/info.json b/keyboards/handwired/tractyl_manuform/5x6_right/info.json index b28f309fdb..fe3f2432ca 100644 --- a/keyboards/handwired/tractyl_manuform/5x6_right/info.json +++ b/keyboards/handwired/tractyl_manuform/5x6_right/info.json @@ -1,5 +1,4 @@ { - "url": "", "usb": { "pid": "0x3536", "device_version": "0.0.1" diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/teensy2pp/keyboard.json b/keyboards/handwired/tractyl_manuform/5x6_right/teensy2pp/keyboard.json index a131ac085b..5a091996b6 100644 --- a/keyboards/handwired/tractyl_manuform/5x6_right/teensy2pp/keyboard.json +++ b/keyboards/handwired/tractyl_manuform/5x6_right/teensy2pp/keyboard.json @@ -11,7 +11,9 @@ ] }, "split": { - "soft_serial_pin": "D2" + "serial": { + "pin": "D2" + } }, "ws2812": { "pin": "E7" diff --git a/keyboards/handwired/traveller/keyboard.json b/keyboards/handwired/traveller/keyboard.json index e6941036f5..01919de563 100644 --- a/keyboards/handwired/traveller/keyboard.json +++ b/keyboards/handwired/traveller/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Traveller", "manufacturer": "Unknown", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -17,8 +16,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/handwired/tsubasa/keyboard.json b/keyboards/handwired/tsubasa/keyboard.json index 31e6bb72cc..b9ba281d06 100644 --- a/keyboards/handwired/tsubasa/keyboard.json +++ b/keyboards/handwired/tsubasa/keyboard.json @@ -27,8 +27,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/twig/twig50/keyboard.json b/keyboards/handwired/twig/twig50/keyboard.json index f1cc2f5a96..836caf3ebc 100644 --- a/keyboards/handwired/twig/twig50/keyboard.json +++ b/keyboards/handwired/twig/twig50/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "twig50", "manufacturer": "Twig", - "url": "", "maintainer": "nodatk", "usb": { "vid": "0xFEED", @@ -15,8 +14,6 @@ "features": { "audio": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/handwired/unicomp_mini_m/keyboard.json b/keyboards/handwired/unicomp_mini_m/keyboard.json index 50ae033028..5fe592b79d 100644 --- a/keyboards/handwired/unicomp_mini_m/keyboard.json +++ b/keyboards/handwired/unicomp_mini_m/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Unicomp Mini M", "manufacturer": "stevendlander", - "url": "", "maintainer": "stevendlander", "usb": { "vid": "0xFEED", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, "console": true, "extrakey": false, "mousekey": false, diff --git a/keyboards/handwired/uthol/info.json b/keyboards/handwired/uthol/info.json index 7270e23172..a5c1a0c0c9 100644 --- a/keyboards/handwired/uthol/info.json +++ b/keyboards/handwired/uthol/info.json @@ -1,6 +1,5 @@ { "manufacturer": "Uthol", - "url": "", "maintainer": "uthol", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/uthol/rev1/keyboard.json b/keyboards/handwired/uthol/rev1/keyboard.json index dd5746e884..4c1be1de1e 100644 --- a/keyboards/handwired/uthol/rev1/keyboard.json +++ b/keyboards/handwired/uthol/rev1/keyboard.json @@ -8,8 +8,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/handwired/uthol/rev2/keyboard.json b/keyboards/handwired/uthol/rev2/keyboard.json index 95ca5946a9..81ec109b27 100644 --- a/keyboards/handwired/uthol/rev2/keyboard.json +++ b/keyboards/handwired/uthol/rev2/keyboard.json @@ -17,8 +17,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/handwired/videowriter/keyboard.json b/keyboards/handwired/videowriter/keyboard.json index f82a0cd07e..bfac3b97ef 100644 --- a/keyboards/handwired/videowriter/keyboard.json +++ b/keyboards/handwired/videowriter/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/wakizashi40/keyboard.json b/keyboards/handwired/wakizashi40/keyboard.json index 495d9a0376..e1dc0d7648 100644 --- a/keyboards/handwired/wakizashi40/keyboard.json +++ b/keyboards/handwired/wakizashi40/keyboard.json @@ -7,7 +7,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/handwired/woodpad/keyboard.json b/keyboards/handwired/woodpad/keyboard.json index e6c07b2c42..baf30d0bdc 100644 --- a/keyboards/handwired/woodpad/keyboard.json +++ b/keyboards/handwired/woodpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Woodpad", "manufacturer": "WoodKeys.click", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/wulkan/keyboard.json b/keyboards/handwired/wulkan/keyboard.json index eceeb5c145..c804409b7d 100644 --- a/keyboards/handwired/wulkan/keyboard.json +++ b/keyboards/handwired/wulkan/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Handwired48Keys", "manufacturer": "Wulkan", - "url": "", "maintainer": "Napoleon Wulkan", "usb": { "vid": "0xFEED", diff --git a/keyboards/handwired/wwa/helios/keyboard.json b/keyboards/handwired/wwa/helios/keyboard.json index 64b2010396..8a77808e67 100644 --- a/keyboards/handwired/wwa/helios/keyboard.json +++ b/keyboards/handwired/wwa/helios/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["GP4", "GP5", "GP6"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/handwired/wwa/kepler/keyboard.json b/keyboards/handwired/wwa/kepler/keyboard.json index f962d632b4..843403bf89 100644 --- a/keyboards/handwired/wwa/kepler/keyboard.json +++ b/keyboards/handwired/wwa/kepler/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["GP9", "GP10", "GP11"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0002", diff --git a/keyboards/handwired/wwa/mercury/keyboard.json b/keyboards/handwired/wwa/mercury/keyboard.json index bb89858da2..8ed067f84d 100644 --- a/keyboards/handwired/wwa/mercury/keyboard.json +++ b/keyboards/handwired/wwa/mercury/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["GP4", "GP5"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0003", diff --git a/keyboards/handwired/wwa/soyuz/keyboard.json b/keyboards/handwired/wwa/soyuz/keyboard.json index 9670f312a6..4b3a015a35 100644 --- a/keyboards/handwired/wwa/soyuz/keyboard.json +++ b/keyboards/handwired/wwa/soyuz/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["GP7", "GP8", "GP9"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0004", diff --git a/keyboards/handwired/wwa/soyuzxl/keyboard.json b/keyboards/handwired/wwa/soyuzxl/keyboard.json index 9180344176..d666e798f4 100644 --- a/keyboards/handwired/wwa/soyuzxl/keyboard.json +++ b/keyboards/handwired/wwa/soyuzxl/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["B5", "B2", "B3"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0005", diff --git a/keyboards/handwired/xealous/rev1/keyboard.json b/keyboards/handwired/xealous/rev1/keyboard.json index 9f926a3602..55e99eeb54 100644 --- a/keyboards/handwired/xealous/rev1/keyboard.json +++ b/keyboards/handwired/xealous/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XeaL60", "manufacturer": "XeaLouS", - "url": "", "maintainer": "alex-ong", "usb": { "vid": "0x4131", diff --git a/keyboards/handwired/z150/keyboard.json b/keyboards/handwired/z150/keyboard.json index 38c92a6537..57d460da89 100644 --- a/keyboards/handwired/z150/keyboard.json +++ b/keyboards/handwired/z150/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Z150", "manufacturer": "ALPS", - "url": "", "maintainer": "DmNosachev", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/handwired/zergo/keyboard.json b/keyboards/handwired/zergo/keyboard.json index 7ee2cd4774..44bd80c0cd 100644 --- a/keyboards/handwired/zergo/keyboard.json +++ b/keyboards/handwired/zergo/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": false, "mousekey": false, "nkro": true diff --git a/keyboards/handwired/ziyoulang_k3_mod/keyboard.json b/keyboards/handwired/ziyoulang_k3_mod/keyboard.json index 5d4ca7a254..b21bd9af91 100644 --- a/keyboards/handwired/ziyoulang_k3_mod/keyboard.json +++ b/keyboards/handwired/ziyoulang_k3_mod/keyboard.json @@ -8,8 +8,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, @@ -141,6 +139,5 @@ } }, "manufacturer": "Coom", - "maintainer": "coomstoolbox", - "url": "" + "maintainer": "coomstoolbox" } diff --git a/keyboards/hardlineworks/otd_plus/keyboard.json b/keyboards/hardlineworks/otd_plus/keyboard.json index e0afc03893..c7bb0b0223 100644 --- a/keyboards/hardlineworks/otd_plus/keyboard.json +++ b/keyboards/hardlineworks/otd_plus/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "OTD-PLUS", "manufacturer": "Hardlineworks", - "url": "", "maintainer": "Hardlineworks", "usb": { "vid": "0x484C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/hardwareabstraction/handwire/keyboard.json b/keyboards/hardwareabstraction/handwire/keyboard.json index 225712dcc4..2bc112f97a 100644 --- a/keyboards/hardwareabstraction/handwire/keyboard.json +++ b/keyboards/hardwareabstraction/handwire/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/heliar/wm1_hotswap/keyboard.json b/keyboards/heliar/wm1_hotswap/keyboard.json index 789a3c7d2b..d87ce22229 100644 --- a/keyboards/heliar/wm1_hotswap/keyboard.json +++ b/keyboards/heliar/wm1_hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "wm1 hotswap", "manufacturer": "Heliar", - "url": "", "maintainer": "heliar", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/heliotrope/keyboard.json b/keyboards/heliotrope/keyboard.json index e173c785e0..26416832c5 100644 --- a/keyboards/heliotrope/keyboard.json +++ b/keyboards/heliotrope/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/helix/pico/info.json b/keyboards/helix/pico/info.json index d4fabc756e..7909bb0b30 100644 --- a/keyboards/helix/pico/info.json +++ b/keyboards/helix/pico/info.json @@ -10,7 +10,9 @@ }, "split": { "enabled": true, - "soft_serial_pin": "D2" + "serial": { + "pin": "D2" + } }, "tapping": { "term": 100 diff --git a/keyboards/helix/rev2/info.json b/keyboards/helix/rev2/info.json index fd829782c0..a8bdb23e41 100644 --- a/keyboards/helix/rev2/info.json +++ b/keyboards/helix/rev2/info.json @@ -15,7 +15,9 @@ "diode_direction": "COL2ROW", "split": { "enabled": true, - "soft_serial_pin": "D2", + "serial": { + "pin": "D2" + }, "transport": { "sync": { "indicators": true, diff --git a/keyboards/helix/rev2/rev2.c b/keyboards/helix/rev2/rev2.c index ded22bbe93..7502ad0552 100644 --- a/keyboards/helix/rev2/rev2.c +++ b/keyboards/helix/rev2/rev2.c @@ -32,7 +32,7 @@ void set_mac_mode_kb(bool macmode) { * https://github.com/qmk/qmk_firmware/blob/fb4a6ad30ea7a648acd59793ed4a30c3a8d8dc32/quantum/process_keycode/process_magic.c#L80-L81 */ keymap_config.swap_lalt_lgui = keymap_config.swap_ralt_rgui = !macmode; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } void matrix_init_kb(void) { diff --git a/keyboards/helix/rev3_4rows/keyboard.json b/keyboards/helix/rev3_4rows/keyboard.json index 5e9fd2dcd8..3d44e8fe78 100644 --- a/keyboards/helix/rev3_4rows/keyboard.json +++ b/keyboards/helix/rev3_4rows/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Helix rev3 4rows", "manufacturer": "yushakobo", - "url": "", "maintainer": "yushakobo", "usb": { "vid": "0x3265", @@ -33,7 +32,9 @@ }, "split": { "enabled": true, - "soft_serial_pin": "D2" + "serial": { + "pin": "D2" + } }, "ws2812": { "pin": "D3" diff --git a/keyboards/helix/rev3_4rows/rev3_4rows.c b/keyboards/helix/rev3_4rows/rev3_4rows.c index ff61027a96..7f655b6852 100644 --- a/keyboards/helix/rev3_4rows/rev3_4rows.c +++ b/keyboards/helix/rev3_4rows/rev3_4rows.c @@ -27,7 +27,7 @@ void set_mac_mode(bool macmode) { * https://github.com/qmk/qmk_firmware/blob/fb4a6ad30ea7a648acd59793ed4a30c3a8d8dc32/quantum/process_keycode/process_magic.c#L80-L81 */ keymap_config.swap_lalt_lgui = keymap_config.swap_ralt_rgui = !macmode; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } #ifdef DIP_SWITCH_ENABLE diff --git a/keyboards/helix/rev3_5rows/keyboard.json b/keyboards/helix/rev3_5rows/keyboard.json index b61db7df86..12328ea86d 100644 --- a/keyboards/helix/rev3_5rows/keyboard.json +++ b/keyboards/helix/rev3_5rows/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Helix rev3 5rows", "manufacturer": "yushakobo", - "url": "", "maintainer": "yushakobo", "usb": { "vid": "0x3265", @@ -99,7 +98,9 @@ }, "split": { "enabled": true, - "soft_serial_pin": "D2" + "serial": { + "pin": "D2" + } }, "ws2812": { "pin": "D3" diff --git a/keyboards/helix/rev3_5rows/rev3_5rows.c b/keyboards/helix/rev3_5rows/rev3_5rows.c index 28fa314a7b..af7276a2b5 100644 --- a/keyboards/helix/rev3_5rows/rev3_5rows.c +++ b/keyboards/helix/rev3_5rows/rev3_5rows.c @@ -27,7 +27,7 @@ void set_mac_mode(bool macmode) { * https://github.com/qmk/qmk_firmware/blob/fb4a6ad30ea7a648acd59793ed4a30c3a8d8dc32/quantum/process_keycode/process_magic.c#L80-L81 */ keymap_config.swap_lalt_lgui = keymap_config.swap_ralt_rgui = !macmode; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } #ifdef DIP_SWITCH_ENABLE diff --git a/keyboards/herevoland/buff75/keyboard.json b/keyboards/herevoland/buff75/keyboard.json index 15f3e27ac1..32b17cff61 100644 --- a/keyboards/herevoland/buff75/keyboard.json +++ b/keyboards/herevoland/buff75/keyboard.json @@ -3,7 +3,6 @@ "processor": "STM32F103", "bootloader": "stm32duino", "manufacturer": "HereVoLand", - "url": "", "maintainer": "Here VoLand @Vem", "usb": { "vid": "0xB727", diff --git a/keyboards/hfdkb/ac001/keyboard.json b/keyboards/hfdkb/ac001/keyboard.json index 87f6e40bc3..8d96cad375 100644 --- a/keyboards/hfdkb/ac001/keyboard.json +++ b/keyboards/hfdkb/ac001/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ac001", "manufacturer": "hfd", - "url": "", "maintainer": "jonylee@hfd", "usb": { "vid": "0xFFFE", @@ -23,8 +22,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/hhkb/ansi/info.json b/keyboards/hhkb/ansi/info.json index 16349fc6e2..ff2c1bba6e 100644 --- a/keyboards/hhkb/ansi/info.json +++ b/keyboards/hhkb/ansi/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "ANSI", "manufacturer": "HHKB", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4848", diff --git a/keyboards/hhkb/jp/keyboard.json b/keyboards/hhkb/jp/keyboard.json index d745f21d20..db96a92a6c 100644 --- a/keyboards/hhkb/jp/keyboard.json +++ b/keyboards/hhkb/jp/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "JP", "manufacturer": "HHKB", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4848", diff --git a/keyboards/hhkb/yang/keyboard.json b/keyboards/hhkb/yang/keyboard.json index a5725d6afa..7af8a62934 100644 --- a/keyboards/hhkb/yang/keyboard.json +++ b/keyboards/hhkb/yang/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "HHKB BLE", "manufacturer": "YANG", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4848", diff --git a/keyboards/hhkb_lite_2/keyboard.json b/keyboards/hhkb_lite_2/keyboard.json index 3e9099f0e5..f4d94f0ffa 100644 --- a/keyboards/hhkb_lite_2/keyboard.json +++ b/keyboards/hhkb_lite_2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "HHKB Lite 2", "manufacturer": "PFU", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x88B2", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/hidtech/bastyl/keyboard.json b/keyboards/hidtech/bastyl/keyboard.json index 1155caa320..3bad155695 100644 --- a/keyboards/hidtech/bastyl/keyboard.json +++ b/keyboards/hidtech/bastyl/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/hifumi/keyboard.json b/keyboards/hifumi/keyboard.json index 457c8a7398..320c14a2be 100644 --- a/keyboards/hifumi/keyboard.json +++ b/keyboards/hifumi/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false, diff --git a/keyboards/hillside/46/0_1/keyboard.json b/keyboards/hillside/46/0_1/keyboard.json index 663eeb25f4..7d3967c8c3 100644 --- a/keyboards/hillside/46/0_1/keyboard.json +++ b/keyboards/hillside/46/0_1/keyboard.json @@ -40,7 +40,6 @@ "rgblight": { "led_count": 4, "split": true, - "hue_steps": 8, "saturation_steps": 8, "brightness_steps": 8, "sleep": true diff --git a/keyboards/hillside/48/0_1/keyboard.json b/keyboards/hillside/48/0_1/keyboard.json index 4dd2e01361..acae16f347 100644 --- a/keyboards/hillside/48/0_1/keyboard.json +++ b/keyboards/hillside/48/0_1/keyboard.json @@ -40,7 +40,6 @@ "rgblight": { "led_count": 5, "split": true, - "hue_steps": 8, "saturation_steps": 8, "brightness_steps": 8, "sleep": true diff --git a/keyboards/hillside/52/0_1/keyboard.json b/keyboards/hillside/52/0_1/keyboard.json index c8db3917d6..469e6c5844 100644 --- a/keyboards/hillside/52/0_1/keyboard.json +++ b/keyboards/hillside/52/0_1/keyboard.json @@ -40,7 +40,6 @@ "rgblight": { "led_count": 5, "split": true, - "hue_steps": 8, "saturation_steps": 8, "brightness_steps": 8, "sleep": true diff --git a/keyboards/hineybush/h08_ocelot/keyboard.json b/keyboards/hineybush/h08_ocelot/keyboard.json index bca579aab8..78fcfae311 100644 --- a/keyboards/hineybush/h08_ocelot/keyboard.json +++ b/keyboards/hineybush/h08_ocelot/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "h08", "manufacturer": "Hiney LLC", - "url": "", "maintainer": "hineybush", "usb": { "vid": "0x04D8", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/hineybush/h10/keyboard.json b/keyboards/hineybush/h10/keyboard.json index 63a109f484..b29061b51b 100644 --- a/keyboards/hineybush/h10/keyboard.json +++ b/keyboards/hineybush/h10/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "h10", "manufacturer": "hineybush", - "url": "", "maintainer": "hineybush", "usb": { "vid": "0x04D8", diff --git a/keyboards/hineybush/h101/keyboard.json b/keyboards/hineybush/h101/keyboard.json index d1f8fa32a0..de36c40962 100644 --- a/keyboards/hineybush/h101/keyboard.json +++ b/keyboards/hineybush/h101/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["C13", "C14", "C15", "A0", "A1", "A2"] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "0.0.1", "vid": "0x4069", diff --git a/keyboards/hineybush/h60/keyboard.json b/keyboards/hineybush/h60/keyboard.json index b7b24b2626..d3db3d4c25 100644 --- a/keyboards/hineybush/h60/keyboard.json +++ b/keyboards/hineybush/h60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "h60", "manufacturer": "hineybush", - "url": "", "maintainer": "hineybush", "usb": { "vid": "0x04D8", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/hineybush/h65/keyboard.json b/keyboards/hineybush/h65/keyboard.json index 8560c7774c..b0beed6aeb 100644 --- a/keyboards/hineybush/h65/keyboard.json +++ b/keyboards/hineybush/h65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "h65", "manufacturer": "Hiney LLC", - "url": "", "maintainer": "hineybush", "usb": { "vid": "0x04D8", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/hineybush/h65_hotswap/keyboard.json b/keyboards/hineybush/h65_hotswap/keyboard.json index 510836f22f..b2a3876741 100644 --- a/keyboards/hineybush/h65_hotswap/keyboard.json +++ b/keyboards/hineybush/h65_hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "h65 hotswap", "manufacturer": "Hiney LLC", - "url": "", "maintainer": "hineybush", "usb": { "vid": "0x04D8", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/hineybush/h660s/keyboard.json b/keyboards/hineybush/h660s/keyboard.json index 44e8c8c21a..26693ec1ea 100644 --- a/keyboards/hineybush/h660s/keyboard.json +++ b/keyboards/hineybush/h660s/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "h660s", "manufacturer": "hineybush", - "url": "", "maintainer": "Josh Hinnebusch", "usb": { "vid": "0x04D8", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/hineybush/h75_singa/keyboard.json b/keyboards/hineybush/h75_singa/keyboard.json index 0c3ca31e28..f9545d9ea1 100644 --- a/keyboards/hineybush/h75_singa/keyboard.json +++ b/keyboards/hineybush/h75_singa/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "h75_singa", "manufacturer": "Singa Keyboards", - "url": "", "maintainer": "hineybush", "usb": { "vid": "0x04D8", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/hineybush/h87_g2/keyboard.json b/keyboards/hineybush/h87_g2/keyboard.json index 13c17caa98..2749b5ad4e 100644 --- a/keyboards/hineybush/h87_g2/keyboard.json +++ b/keyboards/hineybush/h87_g2/keyboard.json @@ -10,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -25,7 +23,6 @@ "rows": ["A15", "B3", "B4", "A0", "B6", "B7"] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/hineybush/h87a/keyboard.json b/keyboards/hineybush/h87a/keyboard.json index 42a50bf001..2048ae6b28 100644 --- a/keyboards/hineybush/h87a/keyboard.json +++ b/keyboards/hineybush/h87a/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "h87a", "manufacturer": "hineybush", - "url": "", "maintainer": "hineybush", "usb": { "vid": "0x04D8", @@ -14,8 +13,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/hineybush/h88/keyboard.json b/keyboards/hineybush/h88/keyboard.json index 6a9b3142e3..87a47bc35b 100644 --- a/keyboards/hineybush/h88/keyboard.json +++ b/keyboards/hineybush/h88/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "h88", "manufacturer": "hineybush", - "url": "", "maintainer": "hineybush", "usb": { "vid": "0x04D8", @@ -14,8 +13,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/hineybush/h88_g2/keyboard.json b/keyboards/hineybush/h88_g2/keyboard.json index 983cbcc1f5..a436bb1bed 100644 --- a/keyboards/hineybush/h88_g2/keyboard.json +++ b/keyboards/hineybush/h88_g2/keyboard.json @@ -10,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -48,7 +46,6 @@ "saturation_steps": 8, "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0002", diff --git a/keyboards/hineybush/hbcp/keyboard.json b/keyboards/hineybush/hbcp/keyboard.json index e8771ea9a7..1ad6755e42 100644 --- a/keyboards/hineybush/hbcp/keyboard.json +++ b/keyboards/hineybush/hbcp/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "hbcp", "manufacturer": "hineybush", - "url": "", "maintainer": "hineybush", "usb": { "vid": "0x04D8", diff --git a/keyboards/hineybush/hineyg80/keyboard.json b/keyboards/hineybush/hineyg80/keyboard.json index 933d689225..863be1d23b 100644 --- a/keyboards/hineybush/hineyg80/keyboard.json +++ b/keyboards/hineybush/hineyg80/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "hineyG80", "manufacturer": "hineybush", - "url": "", "maintainer": "hineybush", "usb": { "vid": "0xFEED", diff --git a/keyboards/hineybush/ibis/keyboard.json b/keyboards/hineybush/ibis/keyboard.json index 8c2f6ca3fe..1dd57647c2 100644 --- a/keyboards/hineybush/ibis/keyboard.json +++ b/keyboards/hineybush/ibis/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["B0", "B1", "B2", "B3", "C7", "C6", "B4", "D7", "D5", "D3"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0xEAA9", diff --git a/keyboards/hineybush/physix/keyboard.json b/keyboards/hineybush/physix/keyboard.json index 79a0bea7ab..695a25bb6a 100644 --- a/keyboards/hineybush/physix/keyboard.json +++ b/keyboards/hineybush/physix/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "PhysiX", "manufacturer": "LZ", - "url": "", "maintainer": "hineybush", "usb": { "vid": "0x04D8", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/hineybush/sm68/keyboard.json b/keyboards/hineybush/sm68/keyboard.json index 8350ca0380..05d3505cc7 100644 --- a/keyboards/hineybush/sm68/keyboard.json +++ b/keyboards/hineybush/sm68/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "sm68", "manufacturer": "hineybush", - "url": "", "maintainer": "hineybush", "usb": { "vid": "0x04D8", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/hnahkb/freyr/keyboard.json b/keyboards/hnahkb/freyr/keyboard.json index 635c9d5989..ff83ecb532 100644 --- a/keyboards/hnahkb/freyr/keyboard.json +++ b/keyboards/hnahkb/freyr/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Freyr", "manufacturer": "HnahKB", - "url": "", "maintainer": "vuhopkep", "usb": { "vid": "0xFEED", diff --git a/keyboards/hnahkb/stella/keyboard.json b/keyboards/hnahkb/stella/keyboard.json index 7c69ec3de2..0a7ac5c109 100644 --- a/keyboards/hnahkb/stella/keyboard.json +++ b/keyboards/hnahkb/stella/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Stella", "manufacturer": "HnahKB", - "url": "", "maintainer": "VGS", "usb": { "vid": "0xFEED", diff --git a/keyboards/holyswitch/lightweight65/keyboard.json b/keyboards/holyswitch/lightweight65/keyboard.json index 16a9f73737..9acefba190 100644 --- a/keyboards/holyswitch/lightweight65/keyboard.json +++ b/keyboards/holyswitch/lightweight65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Lightweight65", "manufacturer": "HolySwitch", - "url": "", "maintainer": "DeskDaily", "usb": { "vid": "0x484F", @@ -19,8 +18,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true }, "layout_aliases": { diff --git a/keyboards/holyswitch/southpaw75/keyboard.json b/keyboards/holyswitch/southpaw75/keyboard.json index 1483e1fc31..86f1e14c21 100644 --- a/keyboards/holyswitch/southpaw75/keyboard.json +++ b/keyboards/holyswitch/southpaw75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "southpaw default", "manufacturer": "drewguy", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x484F", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/horizon/keyboard.json b/keyboards/horizon/keyboard.json index 0fea8cb74c..8dabea33a3 100644 --- a/keyboards/horizon/keyboard.json +++ b/keyboards/horizon/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/horrortroll/caticorn/rev1/hotswap/keyboard.json b/keyboards/horrortroll/caticorn/rev1/hotswap/keyboard.json index ecd3c8a043..84e78251ee 100644 --- a/keyboards/horrortroll/caticorn/rev1/hotswap/keyboard.json +++ b/keyboards/horrortroll/caticorn/rev1/hotswap/keyboard.json @@ -18,8 +18,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true }, "community_layouts": ["tkl_f13_ansi"], diff --git a/keyboards/horrortroll/caticorn/rev1/solder/keyboard.json b/keyboards/horrortroll/caticorn/rev1/solder/keyboard.json index d14278f989..542c458c82 100644 --- a/keyboards/horrortroll/caticorn/rev1/solder/keyboard.json +++ b/keyboards/horrortroll/caticorn/rev1/solder/keyboard.json @@ -18,8 +18,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true }, "community_layouts": ["tkl_ansi", "tkl_ansi_split_bs_rshift", "tkl_ansi_tsangan", "tkl_ansi_tsangan_split_bs_rshift", "tkl_f13_ansi", "tkl_f13_ansi_split_bs_rshift", "tkl_f13_ansi_tsangan", "tkl_f13_ansi_tsangan_split_bs_rshift", "tkl_iso", "tkl_iso_split_bs_rshift", "tkl_iso_tsangan", "tkl_iso_tsangan_split_bs_rshift", "tkl_f13_iso", "tkl_f13_iso_split_bs_rshift", "tkl_f13_iso_tsangan", "tkl_f13_iso_tsangan_split_bs_rshift"], diff --git a/keyboards/horrortroll/chinese_pcb/black_e65/keyboard.json b/keyboards/horrortroll/chinese_pcb/black_e65/keyboard.json index cef69593d7..c0946cf3a6 100644 --- a/keyboards/horrortroll/chinese_pcb/black_e65/keyboard.json +++ b/keyboards/horrortroll/chinese_pcb/black_e65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Black E6.5", "manufacturer": "HorrorTroll", - "url": "", "maintainer": "HorrorTroll", "usb": { "vid": "0x7516", @@ -12,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/horrortroll/chinese_pcb/devil68_pro/keyboard.json b/keyboards/horrortroll/chinese_pcb/devil68_pro/keyboard.json index 77eac52ebd..f10703ab5a 100644 --- a/keyboards/horrortroll/chinese_pcb/devil68_pro/keyboard.json +++ b/keyboards/horrortroll/chinese_pcb/devil68_pro/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Devil68 Pro", "manufacturer": "HorrorTroll", - "url": "", "maintainer": "HorrorTroll", "usb": { "vid": "0x7516", @@ -60,8 +59,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/horrortroll/handwired_k552/keyboard.json b/keyboards/horrortroll/handwired_k552/keyboard.json index 213cdf8086..97f8ec822c 100644 --- a/keyboards/horrortroll/handwired_k552/keyboard.json +++ b/keyboards/horrortroll/handwired_k552/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "K552 Kumara", "manufacturer": "HorrorTroll", - "url": "", "maintainer": "HorrorTroll", "usb": { "vid": "0x7516", diff --git a/keyboards/horrortroll/lemon40/keyboard.json b/keyboards/horrortroll/lemon40/keyboard.json index 6303fb70bb..1c9993ca77 100644 --- a/keyboards/horrortroll/lemon40/keyboard.json +++ b/keyboards/horrortroll/lemon40/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Lemon40", "manufacturer": "HorrorTroll", - "url": "", "maintainer": "HorrorTroll", "usb": { "vid": "0x7516", diff --git a/keyboards/horrortroll/nyx/rev1/keyboard.json b/keyboards/horrortroll/nyx/rev1/keyboard.json index f3b859de0a..c8a297176b 100644 --- a/keyboards/horrortroll/nyx/rev1/keyboard.json +++ b/keyboards/horrortroll/nyx/rev1/keyboard.json @@ -18,8 +18,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/horrortroll/nyx/rev1/lib/startup_swirl_anim.h b/keyboards/horrortroll/nyx/rev1/lib/startup_swirl_anim.h index f26f07fe12..87e2e813a4 100644 --- a/keyboards/horrortroll/nyx/rev1/lib/startup_swirl_anim.h +++ b/keyboards/horrortroll/nyx/rev1/lib/startup_swirl_anim.h @@ -18,6 +18,7 @@ #include <string.h> #include <math.h> #include <lib/lib8tion/lib8tion.h> +#include "eeconfig.h" #define LED_TRAIL 10 @@ -105,7 +106,7 @@ static void swirl_set_color(hsv_t hsv) { traverse_matrix(); if (!(top <= bottom && left <= right)) { - eeprom_read_block(&rgb_matrix_config, EECONFIG_RGB_MATRIX, sizeof(rgb_matrix_config)); + eeconfig_read_rgb_matrix(&rgb_matrix_config); rgb_matrix_mode_noeeprom(rgb_matrix_config.mode); return; } diff --git a/keyboards/horrortroll/paws60/keyboard.json b/keyboards/horrortroll/paws60/keyboard.json index fb158d5791..da03d362f9 100644 --- a/keyboards/horrortroll/paws60/keyboard.json +++ b/keyboards/horrortroll/paws60/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/hotdox76v2/keyboard.json b/keyboards/hotdox76v2/keyboard.json index 438099827e..8881670b56 100644 --- a/keyboards/hotdox76v2/keyboard.json +++ b/keyboards/hotdox76v2/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/hp69/keyboard.json b/keyboards/hp69/keyboard.json index 83ed922a27..1ffad8894d 100644 --- a/keyboards/hp69/keyboard.json +++ b/keyboards/hp69/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "hp69", "manufacturer": "Desiboards", - "url": "", "maintainer": "Ananya Kirti", "usb": { "vid": "0x416B", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/hs60/v1/info.json b/keyboards/hs60/v1/info.json index c6ebae97ce..4c4e7d4e47 100644 --- a/keyboards/hs60/v1/info.json +++ b/keyboards/hs60/v1/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "HS60", "manufacturer": "Yiancar-Designs", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/hs60/v2/ansi/keyboard.json b/keyboards/hs60/v2/ansi/keyboard.json index e0781ef54b..d0ec52a50d 100644 --- a/keyboards/hs60/v2/ansi/keyboard.json +++ b/keyboards/hs60/v2/ansi/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "HS60 V2", "manufacturer": "Yiancar-Designs", - "url": "", "maintainer": "yiancar", "usb": { "vid": "0x8968", diff --git a/keyboards/hs60/v2/hhkb/keyboard.json b/keyboards/hs60/v2/hhkb/keyboard.json index 9bd4d111c2..327359b697 100644 --- a/keyboards/hs60/v2/hhkb/keyboard.json +++ b/keyboards/hs60/v2/hhkb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "HS60 V2", "manufacturer": "Yiancar-Designs", - "url": "", "maintainer": "yiancar", "usb": { "vid": "0x8968", diff --git a/keyboards/hs60/v2/iso/keyboard.json b/keyboards/hs60/v2/iso/keyboard.json index a51dac05fa..e31ff53d7b 100644 --- a/keyboards/hs60/v2/iso/keyboard.json +++ b/keyboards/hs60/v2/iso/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "HS60 V2", "manufacturer": "Yiancar-Designs", - "url": "", "maintainer": "yiancar", "usb": { "vid": "0x8968", diff --git a/keyboards/hubble/keyboard.json b/keyboards/hubble/keyboard.json index 735cf4237d..6f586f2edb 100644 --- a/keyboards/hubble/keyboard.json +++ b/keyboards/hubble/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -37,7 +35,6 @@ "cols": ["F5", "F6", "B4", "E6", "D7", "C6", "D4", "D0"], "rows": ["D1", "F4", "F7", "B5", "B1", "B3", "B6", "B2"] }, - "url": "", "usb": { "vid": "0x4680", "pid": "0x1357", diff --git a/keyboards/huytbt/h50/keyboard.json b/keyboards/huytbt/h50/keyboard.json index cd62966e58..05dd812205 100644 --- a/keyboards/huytbt/h50/keyboard.json +++ b/keyboards/huytbt/h50/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/ianklug/grooveboard/keyboard.json b/keyboards/ianklug/grooveboard/keyboard.json index ce7ac8cc22..508ed1894f 100644 --- a/keyboards/ianklug/grooveboard/keyboard.json +++ b/keyboards/ianklug/grooveboard/keyboard.json @@ -12,8 +12,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/ibm/model_m/ashpil_usbc/keyboard.json b/keyboards/ibm/model_m/ashpil_usbc/keyboard.json index a43e16a04c..3bf1069fd1 100644 --- a/keyboards/ibm/model_m/ashpil_usbc/keyboard.json +++ b/keyboards/ibm/model_m/ashpil_usbc/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/ibm/model_m/modelh/keyboard.json b/keyboards/ibm/model_m/modelh/keyboard.json index 6b9cf20c1d..7fee15cd2c 100644 --- a/keyboards/ibm/model_m/modelh/keyboard.json +++ b/keyboards/ibm/model_m/modelh/keyboard.json @@ -4,10 +4,11 @@ "maintainer": "jhawthorn", "bootloader": "stm32duino", "diode_direction": "COL2ROW", + "dynamic_keymap": { + "layer_count": 3 + }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false @@ -35,7 +36,7 @@ "device_version": "1.0.0", "max_power": 100, "pid": "0xB155", - "vid": "0xFEED" + "vid": "0xBDE0" }, "layouts": { "LAYOUT_fullsize_ansi_wkl": { diff --git a/keyboards/ibm/model_m/teensy2/keyboard.json b/keyboards/ibm/model_m/teensy2/keyboard.json index 173f9e772f..fac1d42ebe 100644 --- a/keyboards/ibm/model_m/teensy2/keyboard.json +++ b/keyboards/ibm/model_m/teensy2/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/ibm/model_m/yugo_m/keyboard.json b/keyboards/ibm/model_m/yugo_m/keyboard.json index 10fe637f03..aee2f9720a 100644 --- a/keyboards/ibm/model_m/yugo_m/keyboard.json +++ b/keyboards/ibm/model_m/yugo_m/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/board.h b/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/board.h new file mode 100644 index 0000000000..5b80eb2230 --- /dev/null +++ b/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/board.h @@ -0,0 +1,8 @@ +// Copyright 2020 Purdea Andrei +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/config.h b/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/config.h index 71e60e9cfe..c10d26b9b2 100644 --- a/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/config.h +++ b/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/config.h @@ -21,8 +21,6 @@ #define SERIAL_NUMBER DEF_SERIAL_NUMBER #endif -#define STM32_HSECLK 16000000 - #define SOLENOID_PIN B5 #define HAPTIC_ENABLE_PIN C13 #define SOLENOID_DEFAULT_DWELL 20 diff --git a/keyboards/ibm/model_m_ssk/teensypp_ssk/keyboard.json b/keyboards/ibm/model_m_ssk/teensypp_ssk/keyboard.json index 5994d820f4..50ce403130 100644 --- a/keyboards/ibm/model_m_ssk/teensypp_ssk/keyboard.json +++ b/keyboards/ibm/model_m_ssk/teensypp_ssk/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/ibnuda/alicia_cook/keyboard.json b/keyboards/ibnuda/alicia_cook/keyboard.json index fd3b23285c..ba9e22f63b 100644 --- a/keyboards/ibnuda/alicia_cook/keyboard.json +++ b/keyboards/ibnuda/alicia_cook/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false diff --git a/keyboards/ibnuda/gurindam/keyboard.json b/keyboards/ibnuda/gurindam/keyboard.json index 1cf74068b6..f136c8ecb2 100644 --- a/keyboards/ibnuda/gurindam/keyboard.json +++ b/keyboards/ibnuda/gurindam/keyboard.json @@ -27,8 +27,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/icebreaker/hotswap/keyboard.json b/keyboards/icebreaker/hotswap/keyboard.json new file mode 100644 index 0000000000..b6e5c1d1ac --- /dev/null +++ b/keyboards/icebreaker/hotswap/keyboard.json @@ -0,0 +1,237 @@ +{ + "manufacturer": "Serene Studio", + "keyboard_name": "Icebreaker HS", + "maintainer": "Matthijs Muller", + "bootloader": "rp2040", + "diode_direction": "COL2ROW", + "encoder": { + "rotary": [ + {"pin_a": "GP26", "pin_b": "GP27"} + ] + }, + "features": { + "bootmagic": true, + "encoder": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgb_matrix": true + }, + "matrix_pins": { + "cols": ["GP24", "GP19", "GP18", "GP17", "GP29", "GP0", "GP12", "GP11", "GP10", "GP7", "GP6", "GP5", "GP4", "GP3", "GP2"], + "rows": ["GP25", "GP22", "GP28", "GP23", "GP1"] + }, + "processor": "RP2040", + "qmk": { + "locking": { + "enabled": true, + "resync": true + } + }, + "rgb_matrix": { + "animations": { + "alphas_mods": true, + "band_pinwheel_sat": true, + "band_pinwheel_val": true, + "band_sat": true, + "band_spiral_sat": true, + "band_spiral_val": true, + "band_val": true, + "breathing": true, + "cycle_all": true, + "cycle_left_right": true, + "cycle_out_in": true, + "cycle_out_in_dual": true, + "cycle_pinwheel": true, + "cycle_spiral": true, + "cycle_up_down": true, + "digital_rain": true, + "dual_beacon": true, + "fractal": true, + "gradient_left_right": true, + "gradient_up_down": true, + "hue_breathing": true, + "hue_pendulum": true, + "hue_wave": true, + "jellybean_raindrops": true, + "multisplash": true, + "pixel_flow": true, + "pixel_rain": true, + "rainbow_beacon": true, + "rainbow_moving_chevron": true, + "rainbow_pinwheels": true, + "raindrops": true, + "solid_multisplash": true, + "solid_reactive": true, + "solid_reactive_cross": true, + "solid_reactive_multicross": true, + "solid_reactive_multinexus": true, + "solid_reactive_multiwide": true, + "solid_reactive_nexus": true, + "solid_reactive_simple": true, + "solid_reactive_wide": true, + "solid_splash": true, + "splash": true, + "typing_heatmap": true + }, + "default": { + "sat": 100, + "val": 80 + }, + "driver": "ws2812", + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4}, + {"matrix": [0, 1], "x": 16, "y": 0, "flags": 4}, + {"matrix": [0, 2], "x": 32, "y": 0, "flags": 4}, + {"matrix": [0, 3], "x": 48, "y": 0, "flags": 4}, + {"matrix": [0, 4], "x": 64, "y": 0, "flags": 4}, + {"matrix": [0, 5], "x": 80, "y": 0, "flags": 4}, + {"matrix": [0, 6], "x": 96, "y": 0, "flags": 4}, + {"matrix": [0, 7], "x": 112, "y": 0, "flags": 4}, + {"matrix": [0, 8], "x": 128, "y": 0, "flags": 4}, + {"matrix": [0, 9], "x": 144, "y": 0, "flags": 4}, + {"matrix": [0, 10], "x": 160, "y": 0, "flags": 4}, + {"matrix": [0, 11], "x": 176, "y": 0, "flags": 4}, + {"matrix": [0, 12], "x": 192, "y": 0, "flags": 4}, + {"matrix": [0, 13], "x": 208, "y": 0, "flags": 4}, + {"matrix": [2, 13], "x": 224, "y": 0, "flags": 4}, + {"matrix": [0, 14], "x": 240, "y": 0, "flags": 4}, + {"matrix": [1, 14], "x": 0, "y": 16, "flags": 4}, + {"matrix": [1, 13], "x": 24, "y": 16, "flags": 4}, + {"matrix": [1, 12], "x": 40, "y": 16, "flags": 4}, + {"matrix": [1, 11], "x": 56, "y": 16, "flags": 4}, + {"matrix": [1, 10], "x": 72, "y": 16, "flags": 4}, + {"matrix": [1, 9], "x": 88, "y": 16, "flags": 4}, + {"matrix": [1, 8], "x": 104, "y": 16, "flags": 4}, + {"matrix": [1, 7], "x": 120, "y": 16, "flags": 4}, + {"matrix": [1, 6], "x": 136, "y": 16, "flags": 4}, + {"matrix": [1, 5], "x": 152, "y": 16, "flags": 4}, + {"matrix": [1, 4], "x": 168, "y": 16, "flags": 4}, + {"matrix": [1, 3], "x": 184, "y": 16, "flags": 4}, + {"matrix": [1, 2], "x": 200, "y": 16, "flags": 4}, + {"matrix": [1, 1], "x": 216, "y": 16, "flags": 4}, + {"matrix": [1, 0], "x": 240, "y": 16, "flags": 4}, + {"matrix": [2, 0], "x": 0, "y": 32, "flags": 4}, + {"matrix": [2, 1], "x": 28, "y": 32, "flags": 4}, + {"matrix": [2, 2], "x": 44, "y": 32, "flags": 4}, + {"matrix": [2, 3], "x": 60, "y": 32, "flags": 4}, + {"matrix": [2, 4], "x": 76, "y": 32, "flags": 4}, + {"matrix": [2, 5], "x": 92, "y": 32, "flags": 4}, + {"matrix": [2, 6], "x": 108, "y": 32, "flags": 4}, + {"matrix": [2, 7], "x": 124, "y": 32, "flags": 4}, + {"matrix": [2, 8], "x": 140, "y": 32, "flags": 4}, + {"matrix": [2, 9], "x": 156, "y": 32, "flags": 4}, + {"matrix": [2, 10], "x": 172, "y": 32, "flags": 4}, + {"matrix": [2, 11], "x": 188, "y": 32, "flags": 4}, + {"matrix": [2, 12], "x": 204, "y": 32, "flags": 4}, + {"matrix": [2, 14], "x": 240, "y": 32, "flags": 4}, + {"matrix": [3, 14], "x": 0, "y": 48, "flags": 4}, + {"matrix": [3, 13], "x": 36, "y": 48, "flags": 4}, + {"matrix": [3, 12], "x": 52, "y": 48, "flags": 4}, + {"matrix": [3, 11], "x": 68, "y": 48, "flags": 4}, + {"matrix": [3, 10], "x": 84, "y": 48, "flags": 4}, + {"matrix": [3, 9], "x": 100, "y": 48, "flags": 4}, + {"matrix": [3, 8], "x": 116, "y": 48, "flags": 4}, + {"matrix": [3, 7], "x": 132, "y": 48, "flags": 4}, + {"matrix": [3, 6], "x": 148, "y": 48, "flags": 4}, + {"matrix": [3, 5], "x": 164, "y": 48, "flags": 4}, + {"matrix": [3, 4], "x": 180, "y": 48, "flags": 4}, + {"matrix": [3, 3], "x": 196, "y": 48, "flags": 4}, + {"matrix": [3, 2], "x": 224, "y": 48, "flags": 4}, + {"matrix": [3, 0], "x": 240, "y": 48, "flags": 4}, + {"matrix": [4, 0], "x": 0, "y": 64, "flags": 4}, + {"matrix": [4, 1], "x": 24, "y": 64, "flags": 4}, + {"matrix": [4, 6], "x": 48, "y": 64, "flags": 4}, + {"matrix": [4, 10], "x": 160, "y": 64, "flags": 4}, + {"matrix": [4, 11], "x": 184, "y": 64, "flags": 4}, + {"matrix": [4, 12], "x": 208, "y": 64, "flags": 4}, + {"matrix": [4, 13], "x": 224, "y": 64, "flags": 4}, + {"matrix": [4, 14], "x": 240, "y": 64, "flags": 4} + ], + "max_brightness": 120 + }, + "usb": { + "device_version": "0.0.1", + "pid": "0x6503", + "vid": "0x5363" + }, + "ws2812": { + "driver": "vendor", + "pin": "GP13" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 10], "x": 10, "y": 0}, + {"matrix": [0, 11], "x": 11, "y": 0}, + {"matrix": [0, 12], "x": 12, "y": 0}, + {"matrix": [0, 13], "x": 13, "y": 0}, + {"matrix": [2, 13], "x": 14, "y": 0}, + {"matrix": [0, 14], "x": 15, "y": 0}, + {"label": "encoder", "matrix": [3, 1], "x": 16, "y": 0, "encoder": 0}, + {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [1, 1], "x": 1.5, "y": 1}, + {"matrix": [1, 2], "x": 2.5, "y": 1}, + {"matrix": [1, 3], "x": 3.5, "y": 1}, + {"matrix": [1, 4], "x": 4.5, "y": 1}, + {"matrix": [1, 5], "x": 5.5, "y": 1}, + {"matrix": [1, 6], "x": 6.5, "y": 1}, + {"matrix": [1, 7], "x": 7.5, "y": 1}, + {"matrix": [1, 8], "x": 8.5, "y": 1}, + {"matrix": [1, 9], "x": 9.5, "y": 1}, + {"matrix": [1, 10], "x": 10.5, "y": 1}, + {"matrix": [1, 11], "x": 11.5, "y": 1}, + {"matrix": [1, 12], "x": 12.5, "y": 1}, + {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [1, 14], "x": 15, "y": 1}, + {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [2, 1], "x": 1.75, "y": 2}, + {"matrix": [2, 2], "x": 2.75, "y": 2}, + {"matrix": [2, 3], "x": 3.75, "y": 2}, + {"matrix": [2, 4], "x": 4.75, "y": 2}, + {"matrix": [2, 5], "x": 5.75, "y": 2}, + {"matrix": [2, 6], "x": 6.75, "y": 2}, + {"matrix": [2, 7], "x": 7.75, "y": 2}, + {"matrix": [2, 8], "x": 8.75, "y": 2}, + {"matrix": [2, 9], "x": 9.75, "y": 2}, + {"matrix": [2, 10], "x": 10.75, "y": 2}, + {"matrix": [2, 11], "x": 11.75, "y": 2}, + {"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, + {"matrix": [2, 14], "x": 15, "y": 2}, + {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [3, 2], "x": 2.25, "y": 3}, + {"matrix": [3, 3], "x": 3.25, "y": 3}, + {"matrix": [3, 4], "x": 4.25, "y": 3}, + {"matrix": [3, 5], "x": 5.25, "y": 3}, + {"matrix": [3, 6], "x": 6.25, "y": 3}, + {"matrix": [3, 7], "x": 7.25, "y": 3}, + {"matrix": [3, 8], "x": 8.25, "y": 3}, + {"matrix": [3, 9], "x": 9.25, "y": 3}, + {"matrix": [3, 10], "x": 10.25, "y": 3}, + {"matrix": [3, 11], "x": 11.25, "y": 3}, + {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [3, 13], "x": 14, "y": 3}, + {"matrix": [3, 14], "x": 15, "y": 3}, + {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, + {"matrix": [4, 1], "x": 1.5, "y": 4, "w": 1}, + {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"matrix": [4, 6], "x": 4, "y": 4, "w": 7}, + {"matrix": [4, 10], "x": 11, "y": 4}, + {"matrix": [4, 11], "x": 12, "y": 4}, + {"matrix": [4, 12], "x": 13, "y": 4}, + {"matrix": [4, 13], "x": 14, "y": 4}, + {"matrix": [4, 14], "x": 15, "y": 4} + ] + } + } +} diff --git a/keyboards/icebreaker/hotswap/keymaps/default/keymap.c b/keyboards/icebreaker/hotswap/keymaps/default/keymap.c new file mode 100644 index 0000000000..058210fff4 --- /dev/null +++ b/keyboards/icebreaker/hotswap/keymaps/default/keymap.c @@ -0,0 +1,43 @@ +/* +Copyright 2024 Matthijs Muller + +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 QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT( + KC_ESC, 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_BSLS, KC_DEL, KC_GRV, KC_MUTE, + 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_BSPC, KC_PGUP, + 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, KC_PGDN, + 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, MO(1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT( + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RM_TOGG, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_VOLU, _______, + _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT + ) +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [1] = { ENCODER_CCW_CW(RM_SATD, RM_SATU) }, +}; +#endif diff --git a/keyboards/icebreaker/hotswap/keymaps/default/rules.mk b/keyboards/icebreaker/hotswap/keymaps/default/rules.mk new file mode 100644 index 0000000000..ee32568148 --- /dev/null +++ b/keyboards/icebreaker/hotswap/keymaps/default/rules.mk @@ -0,0 +1 @@ +ENCODER_MAP_ENABLE = yes diff --git a/keyboards/icebreaker/readme.md b/keyboards/icebreaker/readme.md new file mode 100644 index 0000000000..439756f1b3 --- /dev/null +++ b/keyboards/icebreaker/readme.md @@ -0,0 +1,26 @@ +# Icebreaker + + + + + +* Keyboard Maintainer: [Matthijs Muller](https://github.com/SmollChungus) +* Hardware Supported: Icebreaker Hotswap PCB + +Make example for this keyboard (after setting up your build environment): + + make icebreaker:default + +Flashing example for this keyboard: + + make icebreaker:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
\ No newline at end of file diff --git a/keyboards/idank/sweeq/keyboard.json b/keyboards/idank/sweeq/keyboard.json index a9b8d7411e..3bed772467 100644 --- a/keyboards/idank/sweeq/keyboard.json +++ b/keyboards/idank/sweeq/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/idb/idb_60/keyboard.json b/keyboards/idb/idb_60/keyboard.json index 22ed07b71b..1c4b486fb8 100644 --- a/keyboards/idb/idb_60/keyboard.json +++ b/keyboards/idb/idb_60/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/idobao/id42/keyboard.json b/keyboards/idobao/id42/keyboard.json index 14db7641ea..2b075a7ba1 100644 --- a/keyboards/idobao/id42/keyboard.json +++ b/keyboards/idobao/id42/keyboard.json @@ -8,8 +8,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/idobao/id61/keyboard.json b/keyboards/idobao/id61/keyboard.json index cb55f1750d..d3bf62c726 100644 --- a/keyboards/idobao/id61/keyboard.json +++ b/keyboards/idobao/id61/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/idobao/id63/keyboard.json b/keyboards/idobao/id63/keyboard.json index 1969ca4cf7..141c1263d1 100644 --- a/keyboards/idobao/id63/keyboard.json +++ b/keyboards/idobao/id63/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/idobao/id67/keyboard.json b/keyboards/idobao/id67/keyboard.json index 64c3623fd6..786ed39be0 100644 --- a/keyboards/idobao/id67/keyboard.json +++ b/keyboards/idobao/id67/keyboard.json @@ -8,8 +8,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "command": false, - "console": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/idobao/id75/v1/keyboard.json b/keyboards/idobao/id75/v1/keyboard.json index f52938d0d8..d49724e1b4 100644 --- a/keyboards/idobao/id75/v1/keyboard.json +++ b/keyboards/idobao/id75/v1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ID75", "manufacturer": "IDOBAO", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x6964", @@ -14,7 +13,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/idobao/id75/v2/keyboard.json b/keyboards/idobao/id75/v2/keyboard.json index 09e24dbd47..743c7cf404 100644 --- a/keyboards/idobao/id75/v2/keyboard.json +++ b/keyboards/idobao/id75/v2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ID75", "manufacturer": "IDOBAO", - "url": "", "maintainer": "peepeetee", "usb": { "vid": "0x6964", @@ -52,8 +51,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/idobao/id80/v2/info.json b/keyboards/idobao/id80/v2/info.json index 4d6e0773d8..81f895e929 100644 --- a/keyboards/idobao/id80/v2/info.json +++ b/keyboards/idobao/id80/v2/info.json @@ -1,6 +1,5 @@ { "manufacturer": "IDOBAO", - "url": "", "maintainer": "IDOBAOKB", "usb": { "vid": "0x6964", @@ -50,8 +49,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "backlight": true, "rgblight": true diff --git a/keyboards/idobao/id80/v3/ansi/keyboard.json b/keyboards/idobao/id80/v3/ansi/keyboard.json index 6200c2e88c..0ab369fb5d 100644 --- a/keyboards/idobao/id80/v3/ansi/keyboard.json +++ b/keyboards/idobao/id80/v3/ansi/keyboard.json @@ -8,8 +8,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/idobao/id87/v1/keyboard.json b/keyboards/idobao/id87/v1/keyboard.json index 5ae86f8d5e..e7ce655161 100644 --- a/keyboards/idobao/id87/v1/keyboard.json +++ b/keyboards/idobao/id87/v1/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/idobao/id87/v2/keyboard.json b/keyboards/idobao/id87/v2/keyboard.json index 0ece932274..ad6641f954 100644 --- a/keyboards/idobao/id87/v2/keyboard.json +++ b/keyboards/idobao/id87/v2/keyboard.json @@ -8,8 +8,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/idobao/id96/keyboard.json b/keyboards/idobao/id96/keyboard.json index c06dfdd454..d8c446dd5d 100644 --- a/keyboards/idobao/id96/keyboard.json +++ b/keyboards/idobao/id96/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/idobao/montex/v1/keyboard.json b/keyboards/idobao/montex/v1/keyboard.json index 2d9f503832..52a53021ba 100644 --- a/keyboards/idobao/montex/v1/keyboard.json +++ b/keyboards/idobao/montex/v1/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/idobao/montex/v1rgb/keyboard.json b/keyboards/idobao/montex/v1rgb/keyboard.json index f4c18764b1..1c5252bbea 100755 --- a/keyboards/idobao/montex/v1rgb/keyboard.json +++ b/keyboards/idobao/montex/v1rgb/keyboard.json @@ -37,8 +37,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/idobao/montex/v2/keyboard.json b/keyboards/idobao/montex/v2/keyboard.json index 6c00fd538d..319f46a459 100755 --- a/keyboards/idobao/montex/v2/keyboard.json +++ b/keyboards/idobao/montex/v2/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/idyllic/tinny50_rgb/keyboard.json b/keyboards/idyllic/tinny50_rgb/keyboard.json index b3eb34a4c0..4d3cd320dd 100644 --- a/keyboards/idyllic/tinny50_rgb/keyboard.json +++ b/keyboards/idyllic/tinny50_rgb/keyboard.json @@ -13,8 +13,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/igloo/keyboard.json b/keyboards/igloo/keyboard.json index 6e0cba498b..546b26131d 100644 --- a/keyboards/igloo/keyboard.json +++ b/keyboards/igloo/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -19,7 +17,6 @@ "rows": ["B7", "D0", "D1", "D2", "D3"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/illuminati/is0/keyboard.json b/keyboards/illuminati/is0/keyboard.json index ee90646b19..33f7208a47 100644 --- a/keyboards/illuminati/is0/keyboard.json +++ b/keyboards/illuminati/is0/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "iS0", "manufacturer": "Illuminati Works", - "url": "", "maintainer": "ai03", "usb": { "vid": "0xA103", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/illusion/rosa/keyboard.json b/keyboards/illusion/rosa/keyboard.json index 29b7a2124d..932b1a91d6 100644 --- a/keyboards/illusion/rosa/keyboard.json +++ b/keyboards/illusion/rosa/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Rosa", "manufacturer": "illusion keyboards", - "url": "", "maintainer": "illusion", "usb": { "vid": "0x694B", @@ -11,7 +10,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/ilumkb/primus75/keyboard.json b/keyboards/ilumkb/primus75/keyboard.json index 15831ffda6..6a6a166fc4 100644 --- a/keyboards/ilumkb/primus75/keyboard.json +++ b/keyboards/ilumkb/primus75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Primus75", "manufacturer": "moyi4681", - "url": "", "maintainer": "moyi4681", "usb": { "vid": "0x445A", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ilumkb/simpler61/keyboard.json b/keyboards/ilumkb/simpler61/keyboard.json index 8e7680fb9f..10e182dac8 100644 --- a/keyboards/ilumkb/simpler61/keyboard.json +++ b/keyboards/ilumkb/simpler61/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Simpler61", "manufacturer": "Equalz", - "url": "", "maintainer": "Equalz", "usb": { "vid": "0xC3C3", @@ -51,7 +50,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/ilumkb/simpler64/keyboard.json b/keyboards/ilumkb/simpler64/keyboard.json index 65aa627b04..240d0d67c2 100644 --- a/keyboards/ilumkb/simpler64/keyboard.json +++ b/keyboards/ilumkb/simpler64/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Simpler64", "manufacturer": "Equalz", - "url": "", "maintainer": "Equalz", "usb": { "vid": "0xC3C3", @@ -51,7 +50,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/ilumkb/volcano660/keyboard.json b/keyboards/ilumkb/volcano660/keyboard.json index fa74e46fed..0a42910c86 100644 --- a/keyboards/ilumkb/volcano660/keyboard.json +++ b/keyboards/ilumkb/volcano660/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Volcano660", "manufacturer": "DZTech", - "url": "", "maintainer": "moyi4681", "usb": { "vid": "0x445A", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/inett_studio/sqx/hotswap/keyboard.json b/keyboards/inett_studio/sqx/hotswap/keyboard.json index 432112e7f4..0c28be4582 100644 --- a/keyboards/inett_studio/sqx/hotswap/keyboard.json +++ b/keyboards/inett_studio/sqx/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "SQUARE.X", "manufacturer": "iNETT Studio", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x694E", @@ -66,8 +65,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/inett_studio/sqx/universal/keyboard.json b/keyboards/inett_studio/sqx/universal/keyboard.json index 11bb224a0f..2c2b03bd0d 100644 --- a/keyboards/inett_studio/sqx/universal/keyboard.json +++ b/keyboards/inett_studio/sqx/universal/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "SQUARE.X", "manufacturer": "iNETT Studio", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x694E", @@ -66,8 +65,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/inland/kb83/kb83.c b/keyboards/inland/kb83/kb83.c index 1052131a91..41a3ad8df7 100644 --- a/keyboards/inland/kb83/kb83.c +++ b/keyboards/inland/kb83/kb83.c @@ -317,7 +317,7 @@ bool dip_switch_update_kb(uint8_t index, bool active) { } if(active){ keymap_config.no_gui = 0; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } return true; } diff --git a/keyboards/inland/mk47/keyboard.json b/keyboards/inland/mk47/keyboard.json index b6404f58b2..a69ec2ac4a 100644 --- a/keyboards/inland/mk47/keyboard.json +++ b/keyboards/inland/mk47/keyboard.json @@ -2,7 +2,6 @@ "keyboard_name": "MK47", "manufacturer": "Inland", "maintainer": "jonylee@hfd", - "url":"", "usb": { "vid": "0xFFFE", "pid": "0x0002", @@ -16,8 +15,6 @@ "bootmagic": true, "mousekey": false, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/inland/v83p/keyboard.json b/keyboards/inland/v83p/keyboard.json index 139cfb693b..5fad1a96d4 100644 --- a/keyboards/inland/v83p/keyboard.json +++ b/keyboards/inland/v83p/keyboard.json @@ -21,8 +21,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/input_club/k_type/keyboard.json b/keyboards/input_club/k_type/keyboard.json index a4e8e2419e..ed004335c0 100644 --- a/keyboards/input_club/k_type/keyboard.json +++ b/keyboards/input_club/k_type/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "K-Type (QMK)", "manufacturer": "Input:Club", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x1C11", @@ -58,8 +57,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": true diff --git a/keyboards/input_club/whitefox/keyboard.json b/keyboards/input_club/whitefox/keyboard.json index 1d3799b867..60f2dca4d0 100644 --- a/keyboards/input_club/whitefox/keyboard.json +++ b/keyboards/input_club/whitefox/keyboard.json @@ -113,7 +113,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "led_matrix": true, "mousekey": true, diff --git a/keyboards/io_mini1800/keyboard.json b/keyboards/io_mini1800/keyboard.json index 884d17aa06..be8bd11d6c 100644 --- a/keyboards/io_mini1800/keyboard.json +++ b/keyboards/io_mini1800/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/irene/keyboard.json b/keyboards/irene/keyboard.json index 3280c34c03..a2fcc39090 100644 --- a/keyboards/irene/keyboard.json +++ b/keyboards/irene/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Irene", "manufacturer": "Andrei Collado", - "url": "", "maintainer": "Andrei Collado", "usb": { "vid": "0x1434", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/iriskeyboards/keyboard.json b/keyboards/iriskeyboards/keyboard.json index 200c3a3f6a..f37f2064c5 100644 --- a/keyboards/iriskeyboards/keyboard.json +++ b/keyboards/iriskeyboards/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Iris Rev0", "manufacturer": "SonOfAres", - "url": "", "maintainer": "SonOfAres", "usb": { "vid": "0x494B", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/iron180/keyboard.json b/keyboards/iron180/keyboard.json index 8daae1b1eb..90593faf8a 100644 --- a/keyboards/iron180/keyboard.json +++ b/keyboards/iron180/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Iron180", "manufacturer": "SmithRune", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x8384", diff --git a/keyboards/itstleo/itstleo40/keyboard.json b/keyboards/itstleo/itstleo40/keyboard.json index 637f8e5d7e..ff55e3b0ce 100644 --- a/keyboards/itstleo/itstleo40/keyboard.json +++ b/keyboards/itstleo/itstleo40/keyboard.json @@ -7,8 +7,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "leader": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/j80/keyboard.json b/keyboards/j80/keyboard.json index 72745d262f..91e9683c26 100644 --- a/keyboards/j80/keyboard.json +++ b/keyboards/j80/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "J80", "manufacturer": "JER", - "url": "", "maintainer": "oeywil", "usb": { "vid": "0x20A0", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/jacky_studio/s7_elephant/rev1/keyboard.json b/keyboards/jacky_studio/s7_elephant/rev1/keyboard.json index cbbb27ca04..3e10d732c5 100644 --- a/keyboards/jacky_studio/s7_elephant/rev1/keyboard.json +++ b/keyboards/jacky_studio/s7_elephant/rev1/keyboard.json @@ -31,8 +31,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/jacky_studio/s7_elephant/rev2/keyboard.json b/keyboards/jacky_studio/s7_elephant/rev2/keyboard.json index 23112f5b33..b236301e38 100644 --- a/keyboards/jacky_studio/s7_elephant/rev2/keyboard.json +++ b/keyboards/jacky_studio/s7_elephant/rev2/keyboard.json @@ -14,8 +14,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/jadookb/jkb65/info.json b/keyboards/jadookb/jkb65/info.json index c4a44a0d74..ef62e8e2ea 100644 --- a/keyboards/jadookb/jkb65/info.json +++ b/keyboards/jadookb/jkb65/info.json @@ -7,8 +7,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/jae/j01/keyboard.json b/keyboards/jae/j01/keyboard.json index fd16f2a46e..2375122bd8 100644 --- a/keyboards/jae/j01/keyboard.json +++ b/keyboards/jae/j01/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "J-01", "manufacturer": "Evyd13", - "url": "", "maintainer": "MechMerlin", "usb": { "vid": "0x4705", diff --git a/keyboards/jagdpietr/drakon/keyboard.json b/keyboards/jagdpietr/drakon/keyboard.json index 2d2b68a41a..dfb38ac200 100644 --- a/keyboards/jagdpietr/drakon/keyboard.json +++ b/keyboards/jagdpietr/drakon/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "drakon", "manufacturer": "jagdpietr", - "url": "", "maintainer": "jagdpietr", "usb": { "vid": "0xFEED", diff --git a/keyboards/janus/keyboard.json b/keyboards/janus/keyboard.json index 8c4f522b86..4a82149712 100644 --- a/keyboards/janus/keyboard.json +++ b/keyboards/janus/keyboard.json @@ -18,8 +18,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/jaykeeb/aumz_work/info.json b/keyboards/jaykeeb/aumz_work/info.json index 7ca2eb32b8..e6922255fc 100644 --- a/keyboards/jaykeeb/aumz_work/info.json +++ b/keyboards/jaykeeb/aumz_work/info.json @@ -3,12 +3,9 @@ "maintainer": "Alabahuy", "processor": "RP2040", "bootloader": "rp2040", - "url": "", "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/jaykeeb/jk60/keyboard.json b/keyboards/jaykeeb/jk60/keyboard.json index 3899d90699..9f94100b5f 100644 --- a/keyboards/jaykeeb/jk60/keyboard.json +++ b/keyboards/jaykeeb/jk60/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -21,7 +19,6 @@ "on_state": 0 }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x7760", diff --git a/keyboards/jaykeeb/jk60rgb/keyboard.json b/keyboards/jaykeeb/jk60rgb/keyboard.json index fd6876d563..019fa5c88c 100644 --- a/keyboards/jaykeeb/jk60rgb/keyboard.json +++ b/keyboards/jaykeeb/jk60rgb/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -154,7 +152,6 @@ ] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x7762", diff --git a/keyboards/jaykeeb/jk65/keyboard.json b/keyboards/jaykeeb/jk65/keyboard.json index 0be07caacd..02b45e1ba7 100644 --- a/keyboards/jaykeeb/jk65/keyboard.json +++ b/keyboards/jaykeeb/jk65/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -21,7 +19,6 @@ "on_state": 0 }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x7765", diff --git a/keyboards/jaykeeb/joker/keyboard.json b/keyboards/jaykeeb/joker/keyboard.json index ed8b59d03f..b35c8c5830 100644 --- a/keyboards/jaykeeb/joker/keyboard.json +++ b/keyboards/jaykeeb/joker/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -23,7 +21,6 @@ "on_state": 0 }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0795", diff --git a/keyboards/jaykeeb/kamigakushi/keyboard.json b/keyboards/jaykeeb/kamigakushi/keyboard.json index 7ab02d2c66..b66c5e670d 100644 --- a/keyboards/jaykeeb/kamigakushi/keyboard.json +++ b/keyboards/jaykeeb/kamigakushi/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -19,10 +17,8 @@ }, "rgblight": { "led_count": 2, - "hue_steps": 8, "saturation_steps": 8, "brightness_steps": 8, - "max_brightness": 255, "animations": { "alternating": true, "breathing": true, @@ -45,7 +41,6 @@ "rows": ["GP24", "GP29", "GP6", "GP15", "GP16"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0765", diff --git a/keyboards/jaykeeb/orba/keyboard.json b/keyboards/jaykeeb/orba/keyboard.json index b437667b14..f803ebb7c4 100644 --- a/keyboards/jaykeeb/orba/keyboard.json +++ b/keyboards/jaykeeb/orba/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["GP11", "GP10", "GP18", "GP19", "GP0" ] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0769", diff --git a/keyboards/jaykeeb/sebelas/keyboard.json b/keyboards/jaykeeb/sebelas/keyboard.json index e88607703e..c31b93aeeb 100644 --- a/keyboards/jaykeeb/sebelas/keyboard.json +++ b/keyboards/jaykeeb/sebelas/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -41,7 +39,6 @@ } }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0767", diff --git a/keyboards/jaykeeb/skyline/keyboard.json b/keyboards/jaykeeb/skyline/keyboard.json index 068c11a874..9aa8d78594 100644 --- a/keyboards/jaykeeb/skyline/keyboard.json +++ b/keyboards/jaykeeb/skyline/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -22,7 +20,6 @@ "rows": ["GP13", "GP27", "GP26", "GP25", "GP22", "GP23"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0799", diff --git a/keyboards/jaykeeb/sriwedari70/keyboard.json b/keyboards/jaykeeb/sriwedari70/keyboard.json index c9569a9724..efb13554dc 100644 --- a/keyboards/jaykeeb/sriwedari70/keyboard.json +++ b/keyboards/jaykeeb/sriwedari70/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -30,10 +28,8 @@ }, "rgblight": { "led_count": 8, - "hue_steps": 8, "saturation_steps": 8, "brightness_steps": 8, - "max_brightness": 255, "animations": { "alternating": true, "breathing": true, diff --git a/keyboards/jaykeeb/tokki/keyboard.json b/keyboards/jaykeeb/tokki/keyboard.json index 0ab1150017..8ff2828d9e 100644 --- a/keyboards/jaykeeb/tokki/keyboard.json +++ b/keyboards/jaykeeb/tokki/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -41,7 +39,6 @@ } }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0768", diff --git a/keyboards/jc65/v32a/keyboard.json b/keyboards/jc65/v32a/keyboard.json index 7fd13e0626..cfdbec8663 100644 --- a/keyboards/jc65/v32a/keyboard.json +++ b/keyboards/jc65/v32a/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "JC65 BMC", "manufacturer": "RAMA", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x1234", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/jc65/v32u4/keyboard.json b/keyboards/jc65/v32u4/keyboard.json index 6a8d923507..c38bc4e1ff 100644 --- a/keyboards/jc65/v32u4/keyboard.json +++ b/keyboards/jc65/v32u4/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "JC65", "manufacturer": "dou", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/jd40/keyboard.json b/keyboards/jd40/keyboard.json index f56602b215..b8a363f298 100644 --- a/keyboards/jd40/keyboard.json +++ b/keyboards/jd40/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "jd40", "manufacturer": "geekhack", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/jd45/keyboard.json b/keyboards/jd45/keyboard.json index 6c103ec6dd..559c5f1d26 100644 --- a/keyboards/jd45/keyboard.json +++ b/keyboards/jd45/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "JD45", "manufacturer": "geekhack", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/jels/boaty/keyboard.json b/keyboards/jels/boaty/keyboard.json index 36fa9288ab..4fd622d5b0 100644 --- a/keyboards/jels/boaty/keyboard.json +++ b/keyboards/jels/boaty/keyboard.json @@ -6,7 +6,6 @@ "pid": "0x000B", "device_version": "1.0.0" }, - "url": "", "maintainer": "Jels", "processor": "atmega328p", "bootloader": "usbasploader", @@ -14,9 +13,7 @@ "bootmagic": true, "nkro": false, "mousekey": false, - "extrakey": true, - "console": false, - "command": false + "extrakey": true }, "qmk": { "locking": { diff --git a/keyboards/jels/jels60/info.json b/keyboards/jels/jels60/info.json index 7194542d48..8f3e05e581 100644 --- a/keyboards/jels/jels60/info.json +++ b/keyboards/jels/jels60/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Jels60", "manufacturer": "Jels", - "url": "", "maintainer": "Jels", "usb": { "vid": "0x006A", diff --git a/keyboards/jels/jels60/v1/keyboard.json b/keyboards/jels/jels60/v1/keyboard.json index 1f7b45adef..aabebb36f2 100644 --- a/keyboards/jels/jels60/v1/keyboard.json +++ b/keyboards/jels/jels60/v1/keyboard.json @@ -10,8 +10,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": false }, "qmk": { diff --git a/keyboards/jels/jels60/v2/keyboard.json b/keyboards/jels/jels60/v2/keyboard.json index 4ab87eff49..749f9db1d8 100644 --- a/keyboards/jels/jels60/v2/keyboard.json +++ b/keyboards/jels/jels60/v2/keyboard.json @@ -5,8 +5,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": false }, "qmk": { diff --git a/keyboards/jels/jels88/keyboard.json b/keyboards/jels/jels88/keyboard.json index e4d2c6e273..d9d6d10c24 100644 --- a/keyboards/jels/jels88/keyboard.json +++ b/keyboards/jels/jels88/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Jels88", "manufacturer": "Jels", - "url": "", "maintainer": "Jels", "usb": { "vid": "0x006A", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/jian/keymaps/advanced/keymap.c b/keyboards/jian/keymaps/advanced/keymap.c index eaf57cdd78..e3e58a0e9f 100644 --- a/keyboards/jian/keymaps/advanced/keymap.c +++ b/keyboards/jian/keymaps/advanced/keymap.c @@ -472,9 +472,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (!eeconfig_is_enabled()) { eeconfig_init(); } - keymap_config.raw = eeconfig_read_keymap(); + eeconfig_read_keymap(&keymap_config); keymap_config.nkro = 1; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } return false; case EXT_PLV: diff --git a/keyboards/jkdlab/binary_monkey/keyboard.json b/keyboards/jkdlab/binary_monkey/keyboard.json index c1aad15cb4..a9c9fabe93 100644 --- a/keyboards/jkdlab/binary_monkey/keyboard.json +++ b/keyboards/jkdlab/binary_monkey/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/jkeys_design/gentleman65/keyboard.json b/keyboards/jkeys_design/gentleman65/keyboard.json index 150cf4d351..6ccabe45ef 100644 --- a/keyboards/jkeys_design/gentleman65/keyboard.json +++ b/keyboards/jkeys_design/gentleman65/keyboard.json @@ -28,8 +28,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/jkeys_design/gentleman65_se_s/keyboard.json b/keyboards/jkeys_design/gentleman65_se_s/keyboard.json index cd4570a765..582ce4aad9 100644 --- a/keyboards/jkeys_design/gentleman65_se_s/keyboard.json +++ b/keyboards/jkeys_design/gentleman65_se_s/keyboard.json @@ -28,8 +28,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/jolofsor/denial75/keyboard.json b/keyboards/jolofsor/denial75/keyboard.json index df7c3157c9..69782a93d8 100644 --- a/keyboards/jolofsor/denial75/keyboard.json +++ b/keyboards/jolofsor/denial75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "denial75", "manufacturer": "jsor-hpoli", - "url": "", "maintainer": "jolofsor", "usb": { "vid": "0x4A48", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/joshajohnson/hub20/keyboard.json b/keyboards/joshajohnson/hub20/keyboard.json index 44a3361838..0d557c58b5 100644 --- a/keyboards/joshajohnson/hub20/keyboard.json +++ b/keyboards/joshajohnson/hub20/keyboard.json @@ -32,8 +32,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/jukaie/jk01/keyboard.json b/keyboards/jukaie/jk01/keyboard.json index cde0b38034..6e103a46c9 100644 --- a/keyboards/jukaie/jk01/keyboard.json +++ b/keyboards/jukaie/jk01/keyboard.json @@ -21,8 +21,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, @@ -181,7 +179,6 @@ ], "sleep": true }, - "url": "", "usb": { "device_version": "0.0.2", "pid": "0x0002", diff --git a/keyboards/k34/keyboard.json b/keyboards/k34/keyboard.json index b9a69fb667..84e65978b3 100644 --- a/keyboards/k34/keyboard.json +++ b/keyboards/k34/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/kabedon/kabedon78s/keyboard.json b/keyboards/kabedon/kabedon78s/keyboard.json index b875f9b35a..49bb57fd38 100644 --- a/keyboards/kabedon/kabedon78s/keyboard.json +++ b/keyboards/kabedon/kabedon78s/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "78S", "manufacturer": "Kabe_Don", - "url": "", "maintainer": "370490639", "usb": { "vid": "0x4B44", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/kabedon/kabedon980/keyboard.json b/keyboards/kabedon/kabedon980/keyboard.json index b8e100ceac..af8c2bcea2 100644 --- a/keyboards/kabedon/kabedon980/keyboard.json +++ b/keyboards/kabedon/kabedon980/keyboard.json @@ -34,8 +34,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/kabedon/kabedon98e/keyboard.json b/keyboards/kabedon/kabedon98e/keyboard.json index beff70d5d9..731c03dd74 100644 --- a/keyboards/kabedon/kabedon98e/keyboard.json +++ b/keyboards/kabedon/kabedon98e/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "98e", "manufacturer": "Kabe_Don", - "url": "", "maintainer": "370490639", "usb": { "vid": "0x4B44", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/kagizaraya/chidori/keyboard.json b/keyboards/kagizaraya/chidori/keyboard.json index 2f9066149d..0187d55eec 100644 --- a/keyboards/kagizaraya/chidori/keyboard.json +++ b/keyboards/kagizaraya/chidori/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Chidori", "manufacturer": "Kagizaraya", - "url": "", "maintainer": "ka2hiro", "usb": { "vid": "0xFEED", diff --git a/keyboards/kagizaraya/halberd/keyboard.json b/keyboards/kagizaraya/halberd/keyboard.json index c8c5b5e214..3e39ab8aa1 100644 --- a/keyboards/kagizaraya/halberd/keyboard.json +++ b/keyboards/kagizaraya/halberd/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Halberd", "manufacturer": "Kagizaraya", - "url": "", "maintainer": "ka2hiro", "usb": { "vid": "0xFEED", @@ -33,8 +32,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/kagizaraya/miniaxe/keyboard.json b/keyboards/kagizaraya/miniaxe/keyboard.json index b2e3b14d0e..4e2658fd37 100644 --- a/keyboards/kagizaraya/miniaxe/keyboard.json +++ b/keyboards/kagizaraya/miniaxe/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MiniAxe", "manufacturer": "ENDO Katsuhiro", - "url": "", "maintainer": "ka2hiro", "usb": { "vid": "0xFEED", @@ -38,8 +37,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/kagizaraya/scythe/keyboard.json b/keyboards/kagizaraya/scythe/keyboard.json index ed1bd99f66..eddb54315d 100644 --- a/keyboards/kagizaraya/scythe/keyboard.json +++ b/keyboards/kagizaraya/scythe/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Scythe", "manufacturer": "Kagizaraya", - "url": "", "maintainer": "ka2hiro", "usb": { "vid": "0xFEED", diff --git a/keyboards/kakunpc/business_card/alpha/keyboard.json b/keyboards/kakunpc/business_card/alpha/keyboard.json index 17c42ebb31..c357ae3a00 100644 --- a/keyboards/kakunpc/business_card/alpha/keyboard.json +++ b/keyboards/kakunpc/business_card/alpha/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "business_card alpha", "manufacturer": "kakunpc", - "url": "", "maintainer": "kakunpc", "usb": { "vid": "0xFEED", diff --git a/keyboards/kakunpc/business_card/beta/keyboard.json b/keyboards/kakunpc/business_card/beta/keyboard.json index 5b6a77f358..0e8fda9f58 100644 --- a/keyboards/kakunpc/business_card/beta/keyboard.json +++ b/keyboards/kakunpc/business_card/beta/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "business_card beta", "manufacturer": "kakunpc", - "url": "", "maintainer": "kakunpc", "usb": { "vid": "0xFEED", diff --git a/keyboards/kakunpc/rabbit_capture_plan/keyboard.json b/keyboards/kakunpc/rabbit_capture_plan/keyboard.json index 8bf5d708c9..dce62c64d8 100644 --- a/keyboards/kakunpc/rabbit_capture_plan/keyboard.json +++ b/keyboards/kakunpc/rabbit_capture_plan/keyboard.json @@ -33,8 +33,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/kalakos/bahrnob/keyboard.json b/keyboards/kalakos/bahrnob/keyboard.json index 2e127e555a..988fae4ba4 100644 --- a/keyboards/kalakos/bahrnob/keyboard.json +++ b/keyboards/kalakos/bahrnob/keyboard.json @@ -18,8 +18,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "encoder": true }, diff --git a/keyboards/kaly/kaly42/keyboard.json b/keyboards/kaly/kaly42/keyboard.json index 3115d051df..c19835b90d 100644 --- a/keyboards/kaly/kaly42/keyboard.json +++ b/keyboards/kaly/kaly42/keyboard.json @@ -5,8 +5,6 @@ "development_board": "blackpill_f401", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kapcave/arya/keyboard.json b/keyboards/kapcave/arya/keyboard.json index 986e9eec8b..c1549dd93b 100644 --- a/keyboards/kapcave/arya/keyboard.json +++ b/keyboards/kapcave/arya/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/kapcave/gskt00/keyboard.json b/keyboards/kapcave/gskt00/keyboard.json index 0d2fd292c6..e48480d9c4 100644 --- a/keyboards/kapcave/gskt00/keyboard.json +++ b/keyboards/kapcave/gskt00/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/kapcave/paladin64/keyboard.json b/keyboards/kapcave/paladin64/keyboard.json index 6fdd64a500..afd226fb9c 100644 --- a/keyboards/kapcave/paladin64/keyboard.json +++ b/keyboards/kapcave/paladin64/keyboard.json @@ -13,7 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/kapcave/paladinpad/info.json b/keyboards/kapcave/paladinpad/info.json index 1a639180d0..346f6ad730 100644 --- a/keyboards/kapcave/paladinpad/info.json +++ b/keyboards/kapcave/paladinpad/info.json @@ -5,8 +5,6 @@ "maintainer": "nachie", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/karn/keyboard.json b/keyboards/karn/keyboard.json index 1ddd8e5a98..cd680af65b 100644 --- a/keyboards/karn/keyboard.json +++ b/keyboards/karn/keyboard.json @@ -4,8 +4,6 @@ "maintainer": "robcmills", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kb_elmo/67mk_e/keyboard.json b/keyboards/kb_elmo/67mk_e/keyboard.json index 4e842f28e6..48e3e894f6 100644 --- a/keyboards/kb_elmo/67mk_e/keyboard.json +++ b/keyboards/kb_elmo/67mk_e/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "67mk_E", "manufacturer": "kb_elmo", - "url": "", "maintainer": "kb-elmo", "usb": { "vid": "0xA68C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/kb_elmo/isolation/keyboard.json b/keyboards/kb_elmo/isolation/keyboard.json index e7a40a55e6..1152675912 100644 --- a/keyboards/kb_elmo/isolation/keyboard.json +++ b/keyboards/kb_elmo/isolation/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ISOlation", "manufacturer": "kb-elmo", - "url": "", "maintainer": "kb-elmo", "usb": { "vid": "0xA68C", diff --git a/keyboards/kb_elmo/noah_avr/keyboard.json b/keyboards/kb_elmo/noah_avr/keyboard.json index 48cbb6e5e2..0955a73edc 100644 --- a/keyboards/kb_elmo/noah_avr/keyboard.json +++ b/keyboards/kb_elmo/noah_avr/keyboard.json @@ -29,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/kb_elmo/qez/keyboard.json b/keyboards/kb_elmo/qez/keyboard.json index ab1f823043..0b291f95a5 100644 --- a/keyboards/kb_elmo/qez/keyboard.json +++ b/keyboards/kb_elmo/qez/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "QEZ", "manufacturer": "kb_elmo", - "url": "", "maintainer": "kb-elmo<[email protected]>", "usb": { "vid": "0xA68C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/kb_elmo/vertex/keyboard.json b/keyboards/kb_elmo/vertex/keyboard.json index 5585386296..5032670e3f 100644 --- a/keyboards/kb_elmo/vertex/keyboard.json +++ b/keyboards/kb_elmo/vertex/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Vertex", "manufacturer": "kb_elmo", - "url": "", "maintainer": "kb-elmo", "usb": { "vid": "0xA68C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/kbdcraft/adam64/keyboard.json b/keyboards/kbdcraft/adam64/keyboard.json index d7a96fa577..489dc8f6b5 100644 --- a/keyboards/kbdcraft/adam64/keyboard.json +++ b/keyboards/kbdcraft/adam64/keyboard.json @@ -20,8 +20,6 @@ "mousekey": true, "extrakey": true, "nkro": true, - "console": false, - "command": false, "rgb_matrix": true }, "rgb_matrix": { diff --git a/keyboards/kbdfans/baguette66/rgb/keyboard.json b/keyboards/kbdfans/baguette66/rgb/keyboard.json index 61579473cd..5955add028 100644 --- a/keyboards/kbdfans/baguette66/rgb/keyboard.json +++ b/keyboards/kbdfans/baguette66/rgb/keyboard.json @@ -66,8 +66,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/kbdfans/baguette66/soldered/keyboard.json b/keyboards/kbdfans/baguette66/soldered/keyboard.json index f9c87dad06..fb05dde2ac 100644 --- a/keyboards/kbdfans/baguette66/soldered/keyboard.json +++ b/keyboards/kbdfans/baguette66/soldered/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/kbdfans/bella/rgb/keyboard.json b/keyboards/kbdfans/bella/rgb/keyboard.json index 50310e3667..2ca18d2851 100644 --- a/keyboards/kbdfans/bella/rgb/keyboard.json +++ b/keyboards/kbdfans/bella/rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Bella RGB ANSI", "manufacturer": "KBDfans", - "url": "", "maintainer": "moyi4681", "usb": { "vid": "0x4B42", diff --git a/keyboards/kbdfans/bella/rgb_iso/keyboard.json b/keyboards/kbdfans/bella/rgb_iso/keyboard.json index 20b00283ed..c7dd6423b5 100644 --- a/keyboards/kbdfans/bella/rgb_iso/keyboard.json +++ b/keyboards/kbdfans/bella/rgb_iso/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Bella RGB ISO", "manufacturer": "KBDfans", - "url": "", "maintainer": "moyi4681", "usb": { "vid": "0x4B42", diff --git a/keyboards/kbdfans/bella/soldered/keyboard.json b/keyboards/kbdfans/bella/soldered/keyboard.json index aa5d915980..d6bb586f9b 100644 --- a/keyboards/kbdfans/bella/soldered/keyboard.json +++ b/keyboards/kbdfans/bella/soldered/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Bella Soldered", "manufacturer": "KBDfans", - "url": "", "maintainer": "kbdfans", "usb": { "vid": "0x4B42", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kbdfans/boop65/rgb/keyboard.json b/keyboards/kbdfans/boop65/rgb/keyboard.json index 49fa78b315..4a051c9112 100644 --- a/keyboards/kbdfans/boop65/rgb/keyboard.json +++ b/keyboards/kbdfans/boop65/rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Boop65 RGB", "manufacturer": "KBDfans", - "url": "", "maintainer": "moyi4681", "usb": { "vid": "0x4B42", @@ -64,8 +63,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/kbdfans/bounce/75/hotswap/keyboard.json b/keyboards/kbdfans/bounce/75/hotswap/keyboard.json index 478b4bc372..b67719cbd3 100644 --- a/keyboards/kbdfans/bounce/75/hotswap/keyboard.json +++ b/keyboards/kbdfans/bounce/75/hotswap/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kbdfans/bounce/75/soldered/keyboard.json b/keyboards/kbdfans/bounce/75/soldered/keyboard.json index e1610872e1..b6ef0a29a8 100644 --- a/keyboards/kbdfans/bounce/75/soldered/keyboard.json +++ b/keyboards/kbdfans/bounce/75/soldered/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Bounce75 Soldered", "manufacturer": "KBDfans", - "url": "", "maintainer": "moyi4681", "usb": { "vid": "0x4B42", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kbdfans/bounce/pad/keyboard.json b/keyboards/kbdfans/bounce/pad/keyboard.json index d95010954b..96a5214551 100644 --- a/keyboards/kbdfans/bounce/pad/keyboard.json +++ b/keyboards/kbdfans/bounce/pad/keyboard.json @@ -10,7 +10,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kbdfans/d45/v2/keyboard.json b/keyboards/kbdfans/d45/v2/keyboard.json index 6eadfa0860..a463e19c13 100644 --- a/keyboards/kbdfans/d45/v2/keyboard.json +++ b/keyboards/kbdfans/d45/v2/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kbdfans/epoch80/keyboard.json b/keyboards/kbdfans/epoch80/keyboard.json index 08ed973b92..0f0bcdb544 100644 --- a/keyboards/kbdfans/epoch80/keyboard.json +++ b/keyboards/kbdfans/epoch80/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/kbdfans/jm60/keyboard.json b/keyboards/kbdfans/jm60/keyboard.json index ffa205daa0..6bc60c308c 100644 --- a/keyboards/kbdfans/jm60/keyboard.json +++ b/keyboards/kbdfans/jm60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "JM60", "manufacturer": "JMWS", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/kbdfans/kbd19x/keyboard.json b/keyboards/kbdfans/kbd19x/keyboard.json index 080cf82d80..b5f4673060 100644 --- a/keyboards/kbdfans/kbd19x/keyboard.json +++ b/keyboards/kbdfans/kbd19x/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kbdfans/kbd4x/keyboard.json b/keyboards/kbdfans/kbd4x/keyboard.json index 77abf71f28..1f3d5ce25e 100644 --- a/keyboards/kbdfans/kbd4x/keyboard.json +++ b/keyboards/kbdfans/kbd4x/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KBD4x", "manufacturer": "KBDfans", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/kbdfans/kbd66/keyboard.json b/keyboards/kbdfans/kbd66/keyboard.json index 2b614442a0..57cbab49fd 100644 --- a/keyboards/kbdfans/kbd66/keyboard.json +++ b/keyboards/kbdfans/kbd66/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KBD66", "manufacturer": "KBDfans", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/kbdfans/kbd67/hotswap/keyboard.json b/keyboards/kbdfans/kbd67/hotswap/keyboard.json index fb0c165d14..4620d06a16 100644 --- a/keyboards/kbdfans/kbd67/hotswap/keyboard.json +++ b/keyboards/kbdfans/kbd67/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KBD67 Hotswap", "manufacturer": "KBDFans", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B42", diff --git a/keyboards/kbdfans/kbd67/mkii_soldered/keyboard.json b/keyboards/kbdfans/kbd67/mkii_soldered/keyboard.json index 397f525f7a..06f9238483 100644 --- a/keyboards/kbdfans/kbd67/mkii_soldered/keyboard.json +++ b/keyboards/kbdfans/kbd67/mkii_soldered/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KBD67-MKII Soldered", "manufacturer": "KBDfans", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xA103", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kbdfans/kbd67/mkiirgb/info.json b/keyboards/kbdfans/kbd67/mkiirgb/info.json index 683503b4ee..1371370357 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb/info.json +++ b/keyboards/kbdfans/kbd67/mkiirgb/info.json @@ -1,6 +1,5 @@ { "manufacturer": "KBDfans", - "url": "", "maintainer": "moyi4681", "usb": { "vid": "0x4B42" diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v1/keyboard.json b/keyboards/kbdfans/kbd67/mkiirgb/v1/keyboard.json index a90fd8b26b..f55a649f43 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb/v1/keyboard.json +++ b/keyboards/kbdfans/kbd67/mkiirgb/v1/keyboard.json @@ -44,8 +44,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v2/keyboard.json b/keyboards/kbdfans/kbd67/mkiirgb/v2/keyboard.json index 561c4df2ac..916ee0f33a 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb/v2/keyboard.json +++ b/keyboards/kbdfans/kbd67/mkiirgb/v2/keyboard.json @@ -41,8 +41,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v4/keyboard.json b/keyboards/kbdfans/kbd67/mkiirgb/v4/keyboard.json index 79853d2d0f..ed47182ae5 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb/v4/keyboard.json +++ b/keyboards/kbdfans/kbd67/mkiirgb/v4/keyboard.json @@ -60,8 +60,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/kbdfans/kbd67/mkiirgb_iso/keyboard.json b/keyboards/kbdfans/kbd67/mkiirgb_iso/keyboard.json index b8e9fdaf1c..5000f8fb0a 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb_iso/keyboard.json +++ b/keyboards/kbdfans/kbd67/mkiirgb_iso/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KBD67MKIIRGB ISO", "manufacturer": "KBDfans", - "url": "", "maintainer": "moyi4681", "usb": { "vid": "0x4B42", diff --git a/keyboards/kbdfans/kbd67/rev1/keyboard.json b/keyboards/kbdfans/kbd67/rev1/keyboard.json index ba91317906..04f88cecd2 100644 --- a/keyboards/kbdfans/kbd67/rev1/keyboard.json +++ b/keyboards/kbdfans/kbd67/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KBD67 Rev1", "manufacturer": "KBDfans", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B42", diff --git a/keyboards/kbdfans/kbd67/rev2/keyboard.json b/keyboards/kbdfans/kbd67/rev2/keyboard.json index 1e9d87ba0d..bbfbdd6257 100644 --- a/keyboards/kbdfans/kbd67/rev2/keyboard.json +++ b/keyboards/kbdfans/kbd67/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KBD67 Rev2", "manufacturer": "KBDfans", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B42", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kbdfans/kbd6x/keyboard.json b/keyboards/kbdfans/kbd6x/keyboard.json index c2b9f28b63..ed63da9886 100644 --- a/keyboards/kbdfans/kbd6x/keyboard.json +++ b/keyboards/kbdfans/kbd6x/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KBD6X", "manufacturer": "KBDfans", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B42", @@ -11,7 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/kbdfans/kbd75/rev1/keyboard.json b/keyboards/kbdfans/kbd75/rev1/keyboard.json index 01429c8ebb..900e5dbd78 100644 --- a/keyboards/kbdfans/kbd75/rev1/keyboard.json +++ b/keyboards/kbdfans/kbd75/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KBD75 rev1", "manufacturer": "KBDfans", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B42", diff --git a/keyboards/kbdfans/kbd75/rev2/keyboard.json b/keyboards/kbdfans/kbd75/rev2/keyboard.json index 322eba661a..e0f862d40f 100644 --- a/keyboards/kbdfans/kbd75/rev2/keyboard.json +++ b/keyboards/kbdfans/kbd75/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KBD75 rev2", "manufacturer": "KBDfans", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B42", diff --git a/keyboards/kbdfans/kbd75hs/keyboard.json b/keyboards/kbdfans/kbd75hs/keyboard.json index 3545f2357d..cba3e17e9a 100644 --- a/keyboards/kbdfans/kbd75hs/keyboard.json +++ b/keyboards/kbdfans/kbd75hs/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kbdfans/kbd75rgb/keyboard.json b/keyboards/kbdfans/kbd75rgb/keyboard.json index 9a5f7a6908..6a69d78c03 100644 --- a/keyboards/kbdfans/kbd75rgb/keyboard.json +++ b/keyboards/kbdfans/kbd75rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KBD75RGB", "manufacturer": "KBDfans", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B42", @@ -70,8 +69,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/kbdfans/kbd8x/keyboard.json b/keyboards/kbdfans/kbd8x/keyboard.json index fe0106165d..3e6aa88d4d 100644 --- a/keyboards/kbdfans/kbd8x/keyboard.json +++ b/keyboards/kbdfans/kbd8x/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KBD8X", "manufacturer": "KBDfans", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/kbdfans/kbd8x_mk2/keyboard.json b/keyboards/kbdfans/kbd8x_mk2/keyboard.json index b5d1ee6a25..ff566fd864 100644 --- a/keyboards/kbdfans/kbd8x_mk2/keyboard.json +++ b/keyboards/kbdfans/kbd8x_mk2/keyboard.json @@ -12,7 +12,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kbdfans/kbdmini/keyboard.json b/keyboards/kbdfans/kbdmini/keyboard.json index 8f2dade705..97edf073e6 100644 --- a/keyboards/kbdfans/kbdmini/keyboard.json +++ b/keyboards/kbdfans/kbdmini/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KBDMINI", "manufacturer": "DZTECH", - "url": "", "maintainer": "KBDFans", "usb": { "vid": "0xFEED", @@ -42,8 +41,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kbdfans/kbdpad/mk1/keyboard.json b/keyboards/kbdfans/kbdpad/mk1/keyboard.json index 10de0d0436..ce9bf7cde5 100644 --- a/keyboards/kbdfans/kbdpad/mk1/keyboard.json +++ b/keyboards/kbdfans/kbdpad/mk1/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/kbdfans/kbdpad/mk2/keyboard.json b/keyboards/kbdfans/kbdpad/mk2/keyboard.json index c4af51f034..6c7dba1293 100644 --- a/keyboards/kbdfans/kbdpad/mk2/keyboard.json +++ b/keyboards/kbdfans/kbdpad/mk2/keyboard.json @@ -12,7 +12,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kbdfans/kbdpad/mk3/keyboard.json b/keyboards/kbdfans/kbdpad/mk3/keyboard.json index 7c741f7633..2fad479bad 100644 --- a/keyboards/kbdfans/kbdpad/mk3/keyboard.json +++ b/keyboards/kbdfans/kbdpad/mk3/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kbdfans/maja/keyboard.json b/keyboards/kbdfans/maja/keyboard.json index c307f78637..949dd09fe2 100644 --- a/keyboards/kbdfans/maja/keyboard.json +++ b/keyboards/kbdfans/maja/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Maja", "manufacturer": "KBDFans", - "url": "", "maintainer": "DZTECH", "usb": { "vid": "0x4B42", @@ -47,8 +46,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kbdfans/maja_soldered/keyboard.json b/keyboards/kbdfans/maja_soldered/keyboard.json index f182ef97d1..5c6e13efef 100644 --- a/keyboards/kbdfans/maja_soldered/keyboard.json +++ b/keyboards/kbdfans/maja_soldered/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Maja Soldered", "manufacturer": "KBDFans", - "url": "", "maintainer": "DZTECH", "usb": { "vid": "0x4B42", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kbdfans/niu_mini/keyboard.json b/keyboards/kbdfans/niu_mini/keyboard.json index 4c7d6f6d50..766d63d366 100644 --- a/keyboards/kbdfans/niu_mini/keyboard.json +++ b/keyboards/kbdfans/niu_mini/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NIU Mini", "manufacturer": "KBDFans", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x6E6D", diff --git a/keyboards/kbdfans/odin/rgb/keyboard.json b/keyboards/kbdfans/odin/rgb/keyboard.json index 1777e2cdc0..1fb5a833ec 100644 --- a/keyboards/kbdfans/odin/rgb/keyboard.json +++ b/keyboards/kbdfans/odin/rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Odin RGB", "manufacturer": "KBDFans", - "url": "", "maintainer": "moyi4681", "usb": { "vid": "0x4B42", @@ -65,8 +64,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kbdfans/odin/soldered/keyboard.json b/keyboards/kbdfans/odin/soldered/keyboard.json index 42a8a0e056..1f2fbff5d0 100644 --- a/keyboards/kbdfans/odin/soldered/keyboard.json +++ b/keyboards/kbdfans/odin/soldered/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Odin Soldered", "manufacturer": "KBDFans", - "url": "", "maintainer": "moyi4681", "usb": { "vid": "0x4B42", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kbdfans/odin/v2/keyboard.json b/keyboards/kbdfans/odin/v2/keyboard.json index 595a5596fe..88a133ce70 100644 --- a/keyboards/kbdfans/odin/v2/keyboard.json +++ b/keyboards/kbdfans/odin/v2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Odin V2", "manufacturer": "KBDFans", - "url": "", "maintainer": "lexbrugman", "usb": { "vid": "0x4B42", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kbdfans/odin75/keyboard.json b/keyboards/kbdfans/odin75/keyboard.json index b6fb124c93..2bc63d7561 100644 --- a/keyboards/kbdfans/odin75/keyboard.json +++ b/keyboards/kbdfans/odin75/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -15,8 +13,7 @@ "wpm": true }, "indicators": { - "caps_lock": "GP29", - "on_state": 1 + "caps_lock": "GP29" }, "matrix_pins": { "cols": ["GP19", "GP18", "GP17", "GP16", "GP15", "GP14", "GP13", "GP12", "GP11", "GP10", "GP9", "GP8", "GP7", "GP6", "GP3", "GP4"], diff --git a/keyboards/kbdfans/odinmini/keyboard.json b/keyboards/kbdfans/odinmini/keyboard.json index a9cb1a798f..e5d43d278a 100644 --- a/keyboards/kbdfans/odinmini/keyboard.json +++ b/keyboards/kbdfans/odinmini/keyboard.json @@ -6,7 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -35,7 +34,6 @@ "twinkle": true }, "brightness_steps": 8, - "hue_steps": 8, "led_count": 4, "max_brightness": 180, "saturation_steps": 8, diff --git a/keyboards/kbdfans/phaseone/keyboard.json b/keyboards/kbdfans/phaseone/keyboard.json index fcc6bdc7b3..1c6894cc8e 100644 --- a/keyboards/kbdfans/phaseone/keyboard.json +++ b/keyboards/kbdfans/phaseone/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Phase One", "manufacturer": "KBDFans", - "url": "", "maintainer": "moyi4681", "usb": { "vid": "0x4B42", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/kbdfans/tiger80/keyboard.json b/keyboards/kbdfans/tiger80/keyboard.json index 9761cb892d..a507c5c682 100644 --- a/keyboards/kbdfans/tiger80/keyboard.json +++ b/keyboards/kbdfans/tiger80/keyboard.json @@ -5,8 +5,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -19,7 +17,6 @@ "diode_direction": "COL2ROW", "indicators": { "caps_lock": "C7", - "on_state": 1, "scroll_lock": "B2" }, "processor": "atmega32u4", @@ -48,7 +45,6 @@ "ws2812": { "pin": "B3" }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x0011", diff --git a/keyboards/kbnordic/nordic60/rev_a/keyboard.json b/keyboards/kbnordic/nordic60/rev_a/keyboard.json index 0b1da369b3..f9b0fcafba 100644 --- a/keyboards/kbnordic/nordic60/rev_a/keyboard.json +++ b/keyboards/kbnordic/nordic60/rev_a/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/kbnordic/nordic65/rev_a/keyboard.json b/keyboards/kbnordic/nordic65/rev_a/keyboard.json index 8cd90949ea..a8bee1f378 100644 --- a/keyboards/kbnordic/nordic65/rev_a/keyboard.json +++ b/keyboards/kbnordic/nordic65/rev_a/keyboard.json @@ -12,8 +12,6 @@ "bootloader": "stm32-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "key_lock": true, "mousekey": false, diff --git a/keyboards/kc60/keyboard.json b/keyboards/kc60/keyboard.json index fc21477163..f7ee4e785b 100644 --- a/keyboards/kc60/keyboard.json +++ b/keyboards/kc60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KC60", "manufacturer": "NPKC", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x530A", diff --git a/keyboards/kc60se/keyboard.json b/keyboards/kc60se/keyboard.json index c8bdf24a4b..76a715f589 100644 --- a/keyboards/kc60se/keyboard.json +++ b/keyboards/kc60se/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "kc60se", "manufacturer": "Unknown", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/keebformom/keyboard.json b/keyboards/keebformom/keyboard.json index b1ffee0f3d..7fbaa5737f 100644 --- a/keyboards/keebformom/keyboard.json +++ b/keyboards/keebformom/keyboard.json @@ -1,6 +1,5 @@ { "keyboard_name": "Keeb For Mom", - "url": "", "maintainer": "qmk", "manufacturer": "nendezkombet/sandipratama", "usb": { diff --git a/keyboards/keebio/bamfk4/keyboard.json b/keyboards/keebio/bamfk4/keyboard.json index 829395d671..08b3900766 100644 --- a/keyboards/keebio/bamfk4/keyboard.json +++ b/keyboards/keebio/bamfk4/keyboard.json @@ -80,7 +80,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/keebio/bfo9000/keyboard.json b/keyboards/keebio/bfo9000/keyboard.json index 2dcc6076a0..08d9997d43 100644 --- a/keyboards/keebio/bfo9000/keyboard.json +++ b/keyboards/keebio/bfo9000/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/keebio/bigswitchseat/keyboard.json b/keyboards/keebio/bigswitchseat/keyboard.json index 3d6ce65bde..d6cf6b3799 100644 --- a/keyboards/keebio/bigswitchseat/keyboard.json +++ b/keyboards/keebio/bigswitchseat/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/keebio/cepstrum/info.json b/keyboards/keebio/cepstrum/info.json index 250b886d8b..cb41e89ff6 100644 --- a/keyboards/keebio/cepstrum/info.json +++ b/keyboards/keebio/cepstrum/info.json @@ -7,7 +7,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keebio/convolution/info.json b/keyboards/keebio/convolution/info.json index 9ea761c1a9..5ab3a0226c 100644 --- a/keyboards/keebio/convolution/info.json +++ b/keyboards/keebio/convolution/info.json @@ -6,7 +6,6 @@ "vid": "0xCB10" }, "features": { - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/keebio/dilly/keyboard.json b/keyboards/keebio/dilly/keyboard.json index 83bf1eac9d..82a565ae62 100644 --- a/keyboards/keebio/dilly/keyboard.json +++ b/keyboards/keebio/dilly/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dilly", "manufacturer": "Keebio", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xCB10", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/keebio/ergodicity/keyboard.json b/keyboards/keebio/ergodicity/keyboard.json index f1b1649f8a..6f755ba45c 100644 --- a/keyboards/keebio/ergodicity/keyboard.json +++ b/keyboards/keebio/ergodicity/keyboard.json @@ -11,7 +11,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keebio/fourier/keyboard.json b/keyboards/keebio/fourier/keyboard.json index 057598a259..ae4985787d 100644 --- a/keyboards/keebio/fourier/keyboard.json +++ b/keyboards/keebio/fourier/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/keebio/iris/rev1/keyboard.json b/keyboards/keebio/iris/rev1/keyboard.json index f9c1573a15..fbccf0de84 100644 --- a/keyboards/keebio/iris/rev1/keyboard.json +++ b/keyboards/keebio/iris/rev1/keyboard.json @@ -7,7 +7,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/keebio/iris/rev1_led/keyboard.json b/keyboards/keebio/iris/rev1_led/keyboard.json index 69f14d8494..cb171fcec3 100644 --- a/keyboards/keebio/iris/rev1_led/keyboard.json +++ b/keyboards/keebio/iris/rev1_led/keyboard.json @@ -7,7 +7,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/keebio/iris/rev5/keyboard.json b/keyboards/keebio/iris/rev5/keyboard.json index 043ecdb95e..9c7f04c786 100644 --- a/keyboards/keebio/iris/rev5/keyboard.json +++ b/keyboards/keebio/iris/rev5/keyboard.json @@ -7,8 +7,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/keebio/laplace/keyboard.json b/keyboards/keebio/laplace/keyboard.json index 22cced0ee3..3a2ed70905 100644 --- a/keyboards/keebio/laplace/keyboard.json +++ b/keyboards/keebio/laplace/keyboard.json @@ -28,8 +28,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/keebio/nyquist/rev1/keyboard.json b/keyboards/keebio/nyquist/rev1/keyboard.json index ef20252c53..f684332bdb 100644 --- a/keyboards/keebio/nyquist/rev1/keyboard.json +++ b/keyboards/keebio/nyquist/rev1/keyboard.json @@ -7,7 +7,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/keebio/nyquist/rev2/keyboard.json b/keyboards/keebio/nyquist/rev2/keyboard.json index d327d74599..dede204981 100644 --- a/keyboards/keebio/nyquist/rev2/keyboard.json +++ b/keyboards/keebio/nyquist/rev2/keyboard.json @@ -7,8 +7,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/keebio/nyquist/rev3/keyboard.json b/keyboards/keebio/nyquist/rev3/keyboard.json index f1aa1522f7..bdc7be0e4e 100644 --- a/keyboards/keebio/nyquist/rev3/keyboard.json +++ b/keyboards/keebio/nyquist/rev3/keyboard.json @@ -7,8 +7,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/keebio/sinc/info.json b/keyboards/keebio/sinc/info.json index aa1e08f39d..87be01da9a 100644 --- a/keyboards/keebio/sinc/info.json +++ b/keyboards/keebio/sinc/info.json @@ -7,8 +7,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/keebio/stick/keyboard.json b/keyboards/keebio/stick/keyboard.json index 2e2b3539ab..93d78837eb 100644 --- a/keyboards/keebio/stick/keyboard.json +++ b/keyboards/keebio/stick/keyboard.json @@ -87,8 +87,6 @@ "bootloader": "caterina", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keebio/tragicforce68/keyboard.json b/keyboards/keebio/tragicforce68/keyboard.json index f2f27a7194..3173ed3f50 100644 --- a/keyboards/keebio/tragicforce68/keyboard.json +++ b/keyboards/keebio/tragicforce68/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/keebio/wtf60/keyboard.json b/keyboards/keebio/wtf60/keyboard.json index 2c14740eff..7f9dfd0dcd 100644 --- a/keyboards/keebio/wtf60/keyboard.json +++ b/keyboards/keebio/wtf60/keyboard.json @@ -34,8 +34,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/keebmonkey/kbmg68/keyboard.json b/keyboards/keebmonkey/kbmg68/keyboard.json index 5cb0fa0e45..647f0ecf95 100644 --- a/keyboards/keebmonkey/kbmg68/keyboard.json +++ b/keyboards/keebmonkey/kbmg68/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "kbmg68", "manufacturer": "KeebMonkey", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -31,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false, diff --git a/keyboards/keebsforall/freebird60/keyboard.json b/keyboards/keebsforall/freebird60/keyboard.json index 3c4df7472a..a57600e884 100644 --- a/keyboards/keebsforall/freebird60/keyboard.json +++ b/keyboards/keebsforall/freebird60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Freebird60", "manufacturer": "KnoblesseOblige", - "url": "", "maintainer": "KnoblesseOblige", "usb": { "vid": "0xADAD", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/keebsforall/freebird75/keyboard.json b/keyboards/keebsforall/freebird75/keyboard.json index 1e92ad7063..5560d09e62 100644 --- a/keyboards/keebsforall/freebird75/keyboard.json +++ b/keyboards/keebsforall/freebird75/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["C7", "C6", "B6", "B5", "B4", "D7"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x7575", diff --git a/keyboards/keebsforall/freebirdnp/lite/keyboard.json b/keyboards/keebsforall/freebirdnp/lite/keyboard.json index af98661426..1114df98b1 100644 --- a/keyboards/keebsforall/freebirdnp/lite/keyboard.json +++ b/keyboards/keebsforall/freebirdnp/lite/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/keebsforall/freebirdnp/pro/keyboard.json b/keyboards/keebsforall/freebirdnp/pro/keyboard.json index 8eae2f89f9..c6716b315a 100644 --- a/keyboards/keebsforall/freebirdnp/pro/keyboard.json +++ b/keyboards/keebsforall/freebirdnp/pro/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keebsforall/freebirdtkl/keyboard.json b/keyboards/keebsforall/freebirdtkl/keyboard.json index 37a6243beb..a5a2f2d3c1 100644 --- a/keyboards/keebsforall/freebirdtkl/keyboard.json +++ b/keyboards/keebsforall/freebirdtkl/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/keebwerk/mega/ansi/keyboard.json b/keyboards/keebwerk/mega/ansi/keyboard.json index e5a12585df..01f158da9a 100755 --- a/keyboards/keebwerk/mega/ansi/keyboard.json +++ b/keyboards/keebwerk/mega/ansi/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Keebwerk Mega ANSI", "manufacturer": "Yiancar-Designs", - "url": "", "maintainer": "Yiancar", "usb": { "vid": "0x8968", diff --git a/keyboards/keebwerk/nano_slider/keyboard.json b/keyboards/keebwerk/nano_slider/keyboard.json index 64f59d6c10..e44a2feb3e 100644 --- a/keyboards/keebwerk/nano_slider/keyboard.json +++ b/keyboards/keebwerk/nano_slider/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "nano. slider", "manufacturer": "keebwerk.", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x03A8", diff --git a/keyboards/keebzdotnet/fme/keyboard.json b/keyboards/keebzdotnet/fme/keyboard.json index d7b9ebca0c..49118c32e6 100644 --- a/keyboards/keebzdotnet/fme/keyboard.json +++ b/keyboards/keebzdotnet/fme/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "FMe", "manufacturer": "keebzdotnet", - "url": "", "maintainer": "keebzdotnet", "usb": { "vid": "0x4B5A", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/keebzdotnet/wazowski/keyboard.json b/keyboards/keebzdotnet/wazowski/keyboard.json index 150fa3c790..dcf14c27f3 100644 --- a/keyboards/keebzdotnet/wazowski/keyboard.json +++ b/keyboards/keebzdotnet/wazowski/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/kegen/gboy/keyboard.json b/keyboards/kegen/gboy/keyboard.json index 8c611d6664..a39316328f 100644 --- a/keyboards/kegen/gboy/keyboard.json +++ b/keyboards/kegen/gboy/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kelwin/utopia88/keyboard.json b/keyboards/kelwin/utopia88/keyboard.json index 406642d41c..d73be1dd27 100644 --- a/keyboards/kelwin/utopia88/keyboard.json +++ b/keyboards/kelwin/utopia88/keyboard.json @@ -9,8 +9,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true @@ -23,7 +21,6 @@ "rows": ["B7", "D5", "D3", "D2", "D1", "D0"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/kepler_33/proto/keyboard.json b/keyboards/kepler_33/proto/keyboard.json index 1ac13e81f8..725700b787 100644 --- a/keyboards/kepler_33/proto/keyboard.json +++ b/keyboards/kepler_33/proto/keyboard.json @@ -5,8 +5,6 @@ "bootloader": "stm32-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/keybage/radpad/keyboard.json b/keyboards/keybage/radpad/keyboard.json index 84407a9310..24f84477a8 100644 --- a/keyboards/keybage/radpad/keyboard.json +++ b/keyboards/keybage/radpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RadPad", "manufacturer": "Keybage", - "url": "", "maintainer": "Brandon Schlack", "usb": { "vid": "0x4253", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keybee/keybee65/keyboard.json b/keyboards/keybee/keybee65/keyboard.json index 7952378b15..a2a4862836 100644 --- a/keyboards/keybee/keybee65/keyboard.json +++ b/keyboards/keybee/keybee65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KeyBee65", "manufacturer": "KeyBee", - "url": "", "maintainer": "ToastyStoemp", "usb": { "vid": "0x6265", @@ -20,8 +19,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/keyboardio/atreus/keyboard.json b/keyboards/keyboardio/atreus/keyboard.json index 5185d9ee28..7fee6ec54d 100644 --- a/keyboards/keyboardio/atreus/keyboard.json +++ b/keyboards/keyboardio/atreus/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Atreus", "manufacturer": "Keyboardio", - "url": "", "maintainer": "keyboardio", "usb": { "vid": "0x1209", diff --git a/keyboards/keycapsss/3w6_2040/keyboard.json b/keyboards/keycapsss/3w6_2040/keyboard.json index f29b3753c6..03305c67b6 100644 --- a/keyboards/keycapsss/3w6_2040/keyboard.json +++ b/keyboards/keycapsss/3w6_2040/keyboard.json @@ -7,7 +7,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, @@ -42,7 +41,6 @@ "sat": 232, "speed": 2 }, - "hue_steps": 8, "led_count": 2, "max_brightness": 100, "saturation_steps": 8, diff --git a/keyboards/keycapsss/o4l_5x12/keyboard.json b/keyboards/keycapsss/o4l_5x12/keyboard.json index d83bc58795..5a516adca0 100644 --- a/keyboards/keycapsss/o4l_5x12/keyboard.json +++ b/keyboards/keycapsss/o4l_5x12/keyboard.json @@ -32,7 +32,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/keycapsss/plaid_pad/rev1/keyboard.json b/keyboards/keycapsss/plaid_pad/rev1/keyboard.json index e4a8a8d3c8..fd85b0cff7 100644 --- a/keyboards/keycapsss/plaid_pad/rev1/keyboard.json +++ b/keyboards/keycapsss/plaid_pad/rev1/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/keycapsss/plaid_pad/rev2/keyboard.json b/keyboards/keycapsss/plaid_pad/rev2/keyboard.json index 8dc84d4ee8..2e00961d9b 100644 --- a/keyboards/keycapsss/plaid_pad/rev2/keyboard.json +++ b/keyboards/keycapsss/plaid_pad/rev2/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/keycapsss/plaid_pad/rev3/keyboard.json b/keyboards/keycapsss/plaid_pad/rev3/keyboard.json index 4e1d071287..49aadb2030 100644 --- a/keyboards/keycapsss/plaid_pad/rev3/keyboard.json +++ b/keyboards/keycapsss/plaid_pad/rev3/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/keychron/c1_pro/info.json b/keyboards/keychron/c1_pro/info.json index e40c2b9960..d38a273d45 100644 --- a/keyboards/keychron/c1_pro/info.json +++ b/keyboards/keychron/c1_pro/info.json @@ -15,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/c1_pro_v2/board.h b/keyboards/keychron/c1_pro_v2/board.h new file mode 100644 index 0000000000..e6cf0b2856 --- /dev/null +++ b/keyboards/keychron/c1_pro_v2/board.h @@ -0,0 +1,8 @@ +// Copyright 2025 @ Keychron (https://www.keychron.com) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/keychron/c1_pro_v2/info.json b/keyboards/keychron/c1_pro_v2/info.json index bec58b2a8d..1e6305eb33 100644 --- a/keyboards/keychron/c1_pro_v2/info.json +++ b/keyboards/keychron/c1_pro_v2/info.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/c1_pro_v2/mcuconf.h b/keyboards/keychron/c1_pro_v2/mcuconf.h index ca470fb5b3..95966a32ce 100644 --- a/keyboards/keychron/c1_pro_v2/mcuconf.h +++ b/keyboards/keychron/c1_pro_v2/mcuconf.h @@ -18,9 +18,6 @@ #include_next <mcuconf.h> -#undef STM32_HSECLK -#define STM32_HSECLK 16000000U - #undef STM32_PLLM_VALUE #define STM32_PLLM_VALUE 8 diff --git a/keyboards/keychron/c2_pro/info.json b/keyboards/keychron/c2_pro/info.json index 4b11fc213a..9c0e1ac72e 100644 --- a/keyboards/keychron/c2_pro/info.json +++ b/keyboards/keychron/c2_pro/info.json @@ -15,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/c2_pro_v2/board.h b/keyboards/keychron/c2_pro_v2/board.h new file mode 100644 index 0000000000..e6cf0b2856 --- /dev/null +++ b/keyboards/keychron/c2_pro_v2/board.h @@ -0,0 +1,8 @@ +// Copyright 2025 @ Keychron (https://www.keychron.com) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/keychron/c2_pro_v2/info.json b/keyboards/keychron/c2_pro_v2/info.json index b210151800..9572c9812a 100644 --- a/keyboards/keychron/c2_pro_v2/info.json +++ b/keyboards/keychron/c2_pro_v2/info.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/c2_pro_v2/mcuconf.h b/keyboards/keychron/c2_pro_v2/mcuconf.h index ca470fb5b3..95966a32ce 100644 --- a/keyboards/keychron/c2_pro_v2/mcuconf.h +++ b/keyboards/keychron/c2_pro_v2/mcuconf.h @@ -18,9 +18,6 @@ #include_next <mcuconf.h> -#undef STM32_HSECLK -#define STM32_HSECLK 16000000U - #undef STM32_PLLM_VALUE #define STM32_PLLM_VALUE 8 diff --git a/keyboards/keychron/c3_pro/board.h b/keyboards/keychron/c3_pro/board.h new file mode 100644 index 0000000000..60d25b93b8 --- /dev/null +++ b/keyboards/keychron/c3_pro/board.h @@ -0,0 +1,8 @@ +// Copyright 2024 @ Keychron (https://www.keychron.com) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/keychron/c3_pro/info.json b/keyboards/keychron/c3_pro/info.json index 2bcd155c1b..24a77aae07 100644 --- a/keyboards/keychron/c3_pro/info.json +++ b/keyboards/keychron/c3_pro/info.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/keychron/c3_pro/mcuconf.h b/keyboards/keychron/c3_pro/mcuconf.h index b2b81df855..ad75926a14 100644 --- a/keyboards/keychron/c3_pro/mcuconf.h +++ b/keyboards/keychron/c3_pro/mcuconf.h @@ -18,9 +18,6 @@ #include_next <mcuconf.h> -#undef STM32_HSECLK -#define STM32_HSECLK 16000000U - #undef STM32_PLLM_VALUE #define STM32_PLLM_VALUE 8 diff --git a/keyboards/keychron/q0/info.json b/keyboards/keychron/q0/info.json index a301746831..666a797411 100644 --- a/keyboards/keychron/q0/info.json +++ b/keyboards/keychron/q0/info.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/keychron/q11/info.json b/keyboards/keychron/q11/info.json index 73c4233876..bb9a8f7d0d 100755 --- a/keyboards/keychron/q11/info.json +++ b/keyboards/keychron/q11/info.json @@ -21,8 +21,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/q1v1/info.json b/keyboards/keychron/q1v1/info.json index 0107c60b9c..b8ab503b07 100644 --- a/keyboards/keychron/q1v1/info.json +++ b/keyboards/keychron/q1v1/info.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/q1v2/info.json b/keyboards/keychron/q1v2/info.json index 7eb7038696..f0342254fa 100644 --- a/keyboards/keychron/q1v2/info.json +++ b/keyboards/keychron/q1v2/info.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/keychron/q2/info.json b/keyboards/keychron/q2/info.json index d0bb48d7cb..c322a9902f 100644 --- a/keyboards/keychron/q2/info.json +++ b/keyboards/keychron/q2/info.json @@ -14,8 +14,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/q3/info.json b/keyboards/keychron/q3/info.json index a07fc670d8..a08a115bb6 100644 --- a/keyboards/keychron/q3/info.json +++ b/keyboards/keychron/q3/info.json @@ -14,8 +14,6 @@ "features": { "bootmagic": true, "dip_switch": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/keychron/q4/info.json b/keyboards/keychron/q4/info.json index 4b9f246b4c..bcbfd74217 100644 --- a/keyboards/keychron/q4/info.json +++ b/keyboards/keychron/q4/info.json @@ -18,8 +18,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/keychron/q5/info.json b/keyboards/keychron/q5/info.json index b35996d341..1e7a5de703 100644 --- a/keyboards/keychron/q5/info.json +++ b/keyboards/keychron/q5/info.json @@ -14,8 +14,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/q60/ansi/keyboard.json b/keyboards/keychron/q60/ansi/keyboard.json index 4d6f680890..83ee57d011 100644 --- a/keyboards/keychron/q60/ansi/keyboard.json +++ b/keyboards/keychron/q60/ansi/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/q7/info.json b/keyboards/keychron/q7/info.json index 6b8a94ce99..663ad4b275 100644 --- a/keyboards/keychron/q7/info.json +++ b/keyboards/keychron/q7/info.json @@ -17,8 +17,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/q8/info.json b/keyboards/keychron/q8/info.json index da4c9c6f79..b0478e019b 100644 --- a/keyboards/keychron/q8/info.json +++ b/keyboards/keychron/q8/info.json @@ -17,8 +17,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/q9/info.json b/keyboards/keychron/q9/info.json index 322fcfa1ad..ff80a256d3 100644 --- a/keyboards/keychron/q9/info.json +++ b/keyboards/keychron/q9/info.json @@ -14,8 +14,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/q9_plus/info.json b/keyboards/keychron/q9_plus/info.json index 927f5094a6..8d5034971f 100755 --- a/keyboards/keychron/q9_plus/info.json +++ b/keyboards/keychron/q9_plus/info.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "dip_switch": true, diff --git a/keyboards/keychron/s1/ansi/rgb/keyboard.json b/keyboards/keychron/s1/ansi/rgb/keyboard.json index 23ea66071e..fb52ee6423 100644 --- a/keyboards/keychron/s1/ansi/rgb/keyboard.json +++ b/keyboards/keychron/s1/ansi/rgb/keyboard.json @@ -37,8 +37,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/s1/ansi/white/keyboard.json b/keyboards/keychron/s1/ansi/white/keyboard.json index 40cc99a23f..7118ebfc44 100644 --- a/keyboards/keychron/s1/ansi/white/keyboard.json +++ b/keyboards/keychron/s1/ansi/white/keyboard.json @@ -123,8 +123,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "led_matrix": true, diff --git a/keyboards/keychron/v2/ansi/keyboard.json b/keyboards/keychron/v2/ansi/keyboard.json index 015aae6e3e..bc09cb8a27 100644 --- a/keyboards/keychron/v2/ansi/keyboard.json +++ b/keyboards/keychron/v2/ansi/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/v2/ansi_encoder/keyboard.json b/keyboards/keychron/v2/ansi_encoder/keyboard.json index ca62bab148..6752d14b15 100644 --- a/keyboards/keychron/v2/ansi_encoder/keyboard.json +++ b/keyboards/keychron/v2/ansi_encoder/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "encoder": true, "extrakey": true, diff --git a/keyboards/keychron/v2/iso/keyboard.json b/keyboards/keychron/v2/iso/keyboard.json index 827f613247..89bdb51a65 100644 --- a/keyboards/keychron/v2/iso/keyboard.json +++ b/keyboards/keychron/v2/iso/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/v2/iso_encoder/keyboard.json b/keyboards/keychron/v2/iso_encoder/keyboard.json index 10774d6974..89ce2714f1 100644 --- a/keyboards/keychron/v2/iso_encoder/keyboard.json +++ b/keyboards/keychron/v2/iso_encoder/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "encoder": true, "extrakey": true, diff --git a/keyboards/keychron/v2/jis/keyboard.json b/keyboards/keychron/v2/jis/keyboard.json index c775944009..01beaf31ac 100644 --- a/keyboards/keychron/v2/jis/keyboard.json +++ b/keyboards/keychron/v2/jis/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/v2/jis_encoder/keyboard.json b/keyboards/keychron/v2/jis_encoder/keyboard.json index c783b3553e..d8a540953c 100644 --- a/keyboards/keychron/v2/jis_encoder/keyboard.json +++ b/keyboards/keychron/v2/jis_encoder/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "encoder": true, "extrakey": true, diff --git a/keyboards/keychron/v3/ansi/keyboard.json b/keyboards/keychron/v3/ansi/keyboard.json index b8489a43b4..d388456227 100644 --- a/keyboards/keychron/v3/ansi/keyboard.json +++ b/keyboards/keychron/v3/ansi/keyboard.json @@ -5,8 +5,6 @@ "maintainer": "lalalademaxiya1", "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/v3/iso/keyboard.json b/keyboards/keychron/v3/iso/keyboard.json index b257deb1c0..40a8139ccc 100644 --- a/keyboards/keychron/v3/iso/keyboard.json +++ b/keyboards/keychron/v3/iso/keyboard.json @@ -5,7 +5,6 @@ "maintainer": "lalalademaxiya1", "features": { "bootmagic": true, - "command": false, "console": true, "dip_switch": true, "extrakey": true, diff --git a/keyboards/keychron/v3/jis/keyboard.json b/keyboards/keychron/v3/jis/keyboard.json index f00716b2db..0bc3a43d0e 100644 --- a/keyboards/keychron/v3/jis/keyboard.json +++ b/keyboards/keychron/v3/jis/keyboard.json @@ -5,8 +5,6 @@ "maintainer": "lalalademaxiya1", "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/v4/ansi/keyboard.json b/keyboards/keychron/v4/ansi/keyboard.json index d66eb3f956..7184e32f27 100644 --- a/keyboards/keychron/v4/ansi/keyboard.json +++ b/keyboards/keychron/v4/ansi/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/v4/iso/keyboard.json b/keyboards/keychron/v4/iso/keyboard.json index c7854307e4..8077844652 100644 --- a/keyboards/keychron/v4/iso/keyboard.json +++ b/keyboards/keychron/v4/iso/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/v7/ansi/keyboard.json b/keyboards/keychron/v7/ansi/keyboard.json index a60b46dc97..503aea5ab6 100644 --- a/keyboards/keychron/v7/ansi/keyboard.json +++ b/keyboards/keychron/v7/ansi/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/v7/iso/keyboard.json b/keyboards/keychron/v7/iso/keyboard.json index 0022222635..ec4cd06e6b 100644 --- a/keyboards/keychron/v7/iso/keyboard.json +++ b/keyboards/keychron/v7/iso/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/v8/ansi/keyboard.json b/keyboards/keychron/v8/ansi/keyboard.json index 7827270228..392783e024 100644 --- a/keyboards/keychron/v8/ansi/keyboard.json +++ b/keyboards/keychron/v8/ansi/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/v8/ansi_encoder/keyboard.json b/keyboards/keychron/v8/ansi_encoder/keyboard.json index a5d84021d0..6d3257feec 100644 --- a/keyboards/keychron/v8/ansi_encoder/keyboard.json +++ b/keyboards/keychron/v8/ansi_encoder/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "encoder": true, "extrakey": true, diff --git a/keyboards/keychron/v8/iso/keyboard.json b/keyboards/keychron/v8/iso/keyboard.json index 89310111f5..0d10662a00 100644 --- a/keyboards/keychron/v8/iso/keyboard.json +++ b/keyboards/keychron/v8/iso/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keychron/v8/iso_encoder/keyboard.json b/keyboards/keychron/v8/iso_encoder/keyboard.json index 2e50de7421..d446d213d4 100644 --- a/keyboards/keychron/v8/iso_encoder/keyboard.json +++ b/keyboards/keychron/v8/iso_encoder/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "dip_switch": true, "encoder": true, "extrakey": true, diff --git a/keyboards/keycult/keycult1800/keyboard.json b/keyboards/keycult/keycult1800/keyboard.json index a50b77d104..8ed6e6e2fa 100644 --- a/keyboards/keycult/keycult1800/keyboard.json +++ b/keyboards/keycult/keycult1800/keyboard.json @@ -96,7 +96,8 @@ { "matrix": [3, 15], "x": 16.5, "y": 3.5 }, { "matrix": [3, 16], "x": 17.5, "y": 3.5 }, { "matrix": [3, 17], "x": 18.5, "y": 3.5 }, - { "matrix": [4, 0], "w": 2.25, "x": 0, "y": 4.5 }, + { "matrix": [4, 0], "w": 1.25, "x": 0, "y": 4.5 }, + { "matrix": [4, 1], "x": 1.25, "y": 4.5 }, { "matrix": [4, 2], "x": 2.25, "y": 4.5 }, { "matrix": [4, 3], "x": 3.25, "y": 4.5 }, { "matrix": [4, 4], "x": 4.25, "y": 4.5 }, diff --git a/keyboards/keycult/keycult1800/keymaps/default/keymap.c b/keyboards/keycult/keycult1800/keymaps/default/keymap.c index e596ff2db0..79570b73a2 100644 --- a/keyboards/keycult/keycult1800/keymaps/default/keymap.c +++ b/keyboards/keycult/keycult1800/keymaps/default/keymap.c @@ -21,7 +21,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_DEL, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, 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_P7, KC_P8, KC_P9, KC_PPLS, 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, KC_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, KC_PENT, + KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), [1] = LAYOUT( /* FN */ @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), }; diff --git a/keyboards/keyhive/absinthe/keyboard.json b/keyboards/keyhive/absinthe/keyboard.json index 82a5ae5631..26939e4dcc 100644 --- a/keyboards/keyhive/absinthe/keyboard.json +++ b/keyboards/keyhive/absinthe/keyboard.json @@ -25,8 +25,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/keyhive/honeycomb/keyboard.json b/keyboards/keyhive/honeycomb/keyboard.json index 768f08275d..69907fccc1 100644 --- a/keyboards/keyhive/honeycomb/keyboard.json +++ b/keyboards/keyhive/honeycomb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Honeycomb", "manufacturer": "Keyhive", - "url": "", "maintainer": "filoxo", "usb": { "vid": "0xFEED", diff --git a/keyboards/keyhive/lattice60/keyboard.json b/keyboards/keyhive/lattice60/keyboard.json index b805a73357..fce9453e34 100644 --- a/keyboards/keyhive/lattice60/keyboard.json +++ b/keyboards/keyhive/lattice60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "LATTICE60", "manufacturer": "emdarcher", - "url": "", "maintainer": "emdarcher", "usb": { "vid": "0x16C0", diff --git a/keyboards/keyhive/navi10/info.json b/keyboards/keyhive/navi10/info.json index e5df0c68e1..25c9f14f27 100644 --- a/keyboards/keyhive/navi10/info.json +++ b/keyboards/keyhive/navi10/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Navi10", "manufacturer": "emdarcher", - "url": "", "maintainer": "emdarcher", "usb": { "vid": "0xFEED", diff --git a/keyboards/keyhive/opus/keyboard.json b/keyboards/keyhive/opus/keyboard.json index e92c8604ce..6072a59f5d 100644 --- a/keyboards/keyhive/opus/keyboard.json +++ b/keyboards/keyhive/opus/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/keyhive/smallice/keyboard.json b/keyboards/keyhive/smallice/keyboard.json index f7118ed3cf..2b3a6994e7 100644 --- a/keyboards/keyhive/smallice/keyboard.json +++ b/keyboards/keyhive/smallice/keyboard.json @@ -31,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/keyhive/southpole/keyboard.json b/keyboards/keyhive/southpole/keyboard.json index 7136675881..8c1895b45d 100644 --- a/keyboards/keyhive/southpole/keyboard.json +++ b/keyboards/keyhive/southpole/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "southpole", "manufacturer": "u/waxpoetic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/keyhive/ut472/keyboard.json b/keyboards/keyhive/ut472/keyboard.json index 828058a955..6050751da9 100644 --- a/keyboards/keyhive/ut472/keyboard.json +++ b/keyboards/keyhive/ut472/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "UT47.2", "manufacturer": "Keyhive", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xA103", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/keyprez/bison/keyboard.json b/keyboards/keyprez/bison/keyboard.json index 5fd2de1ff5..94d2049965 100644 --- a/keyboards/keyprez/bison/keyboard.json +++ b/keyboards/keyprez/bison/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "bison", "manufacturer": "csandven", - "url": "", "maintainer": "Christian Sandven", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keyprez/corgi/keyboard.json b/keyboards/keyprez/corgi/keyboard.json index 8e664de03d..6883970af4 100644 --- a/keyboards/keyprez/corgi/keyboard.json +++ b/keyboards/keyprez/corgi/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "corgi", "manufacturer": "Christian Sandven", - "url": "", "maintainer": "Christian Sandven", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keyprez/rhino/keyboard.json b/keyboards/keyprez/rhino/keyboard.json index 75854f6f99..f7993c9020 100644 --- a/keyboards/keyprez/rhino/keyboard.json +++ b/keyboards/keyprez/rhino/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "rhino", "manufacturer": "Christian Sandven", - "url": "", "maintainer": "Christian Sandven", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "audio": true, "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keyprez/unicorn/keyboard.json b/keyboards/keyprez/unicorn/keyboard.json index 7fa855e240..20aa2e3e73 100644 --- a/keyboards/keyprez/unicorn/keyboard.json +++ b/keyboards/keyprez/unicorn/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Unicorn", "manufacturer": "Keyprez", - "url": "", "maintainer": "Keyprez", "usb": { "vid": "0x6B7A", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keyquest/enclave/keyboard.json b/keyboards/keyquest/enclave/keyboard.json index 9b2dbb6519..57fe8eaa61 100644 --- a/keyboards/keyquest/enclave/keyboard.json +++ b/keyboards/keyquest/enclave/keyboard.json @@ -33,8 +33,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/keysofkings/twokey/keyboard.json b/keyboards/keysofkings/twokey/keyboard.json index 2b75891329..2ec17f2b93 100644 --- a/keyboards/keysofkings/twokey/keyboard.json +++ b/keyboards/keysofkings/twokey/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Twokey", "manufacturer": "Keys of Kings", - "url": "", "maintainer": "Keys of Kings", "usb": { "vid": "0xFEED", @@ -32,8 +31,6 @@ "features": { "audio": true, "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/keyspensory/kp60/keyboard.json b/keyboards/keyspensory/kp60/keyboard.json index 1172e14d45..2072186e9d 100644 --- a/keyboards/keyspensory/kp60/keyboard.json +++ b/keyboards/keyspensory/kp60/keyboard.json @@ -17,8 +17,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -26,7 +24,6 @@ }, "rgblight": { "led_count": 8, - "hue_steps": 8, "saturation_steps": 8, "brightness_steps": 8, "animations": { diff --git a/keyboards/keystonecaps/gameroyadvance/keyboard.json b/keyboards/keystonecaps/gameroyadvance/keyboard.json index 15cce9afd5..1a7960ac25 100644 --- a/keyboards/keystonecaps/gameroyadvance/keyboard.json +++ b/keyboards/keystonecaps/gameroyadvance/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/keyten/aperture/keyboard.json b/keyboards/keyten/aperture/keyboard.json index 7648e46cc0..614a1e4ab7 100644 --- a/keyboards/keyten/aperture/keyboard.json +++ b/keyboards/keyten/aperture/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Aperture", "manufacturer": "Bizunow", - "url": "", "maintainer": "key10iq", "usb": { "vid": "0xEB69", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/keyten/diablo/keyboard.json b/keyboards/keyten/diablo/keyboard.json index 3882d4e160..c65ba97fae 100644 --- a/keyboards/keyten/diablo/keyboard.json +++ b/keyboards/keyten/diablo/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/keyten/kt3700/keyboard.json b/keyboards/keyten/kt3700/keyboard.json index 9f89ee1453..6b14c733bd 100644 --- a/keyboards/keyten/kt3700/keyboard.json +++ b/keyboards/keyten/kt3700/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "kt3700", "manufacturer": "keyten", - "url": "", "maintainer": "key10iq", "usb": { "vid": "0xEB69", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/keyten/kt60_m/keyboard.json b/keyboards/keyten/kt60_m/keyboard.json index f72deeebbd..11605a10d0 100644 --- a/keyboards/keyten/kt60_m/keyboard.json +++ b/keyboards/keyten/kt60_m/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "kt60-M", "manufacturer": "keyten", - "url": "", "maintainer": "key10iq", "usb": { "vid": "0xEB69", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/keyten/kt60hs_t/info.json b/keyboards/keyten/kt60hs_t/info.json new file mode 100644 index 0000000000..97b4f7d222 --- /dev/null +++ b/keyboards/keyten/kt60hs_t/info.json @@ -0,0 +1,14 @@ +{ + "manufacturer": "keyten", + "keyboard_name": "kt60HS-T", + "maintainer": "key10iq", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "usb": { + "vid": "0xEB69" + } +} diff --git a/keyboards/keyten/kt60hs_t/readme.md b/keyboards/keyten/kt60hs_t/readme.md index 75ccbc3b69..eb02f6bb8f 100644 --- a/keyboards/keyten/kt60hs_t/readme.md +++ b/keyboards/keyten/kt60hs_t/readme.md @@ -2,30 +2,15 @@ 60% MX Hot-Swap Tsangan PCB - - -* Keyboard Maintainer: [keyten](https://github.com/key10iq) -* Hardware Supported: keyten kt60HS-T -* Hardware Availability: private GB + Supports: 1. Split Backspace 2. Stepped Caps Lock -Make example for this keyboard (after setting up your build environment): - - make keyten/kt60hs_t:default - -Flashing example for this keyboard: - - make keyten/kt60hs_t:default:flash - -See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). - -## Bootloader - -Enter the bootloader in 3 ways: +There are two versions of the PCB available. -* Bootmagic reset: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard -* Keycode in layout: Press the key mapped to `QK_BOOT` if it is available -* Physical reset button: Hold the button on the back of the PCB +|Version| Features | +|-------|-------------------------------------------| +|v1 |Blue/Purple PCB / ARM STM32F401 controller | +|v2 |Purple PCB / ARM STM32F072 controller | diff --git a/keyboards/keyten/kt60hs_t/keyboard.json b/keyboards/keyten/kt60hs_t/v1/keyboard.json index 63a755d698..b5b90304b2 100644 --- a/keyboards/keyten/kt60hs_t/keyboard.json +++ b/keyboards/keyten/kt60hs_t/v1/keyboard.json @@ -1,17 +1,6 @@ { - "manufacturer": "keyten", - "keyboard_name": "kt60HS-T", - "maintainer": "key10iq", "bootloader": "stm32-dfu", "diode_direction": "COL2ROW", - "features": { - "bootmagic": true, - "command": false, - "console": false, - "extrakey": true, - "mousekey": true, - "nkro": true - }, "matrix_pins": { "cols": ["A3", "A4", "A5", "A6", "A7", "B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15", "A14"], "rows": ["B15", "B14", "B12", "B13", "B0"] @@ -19,8 +8,7 @@ "processor": "STM32F401", "usb": { "device_version": "0.0.1", - "pid": "0x6004", - "vid": "0xEB69" + "pid": "0x6004" }, "community_layouts": [ "60_ansi_wkl_split_bs_rshift", @@ -28,7 +16,8 @@ "60_ansi_tsangan_split_bs_rshift" ], "layout_aliases": { - "LAYOUT_60_tsangan_hhkb": "LAYOUT_60_ansi_tsangan_split_bs_rshift" + "LAYOUT_60_tsangan_hhkb": "LAYOUT_60_ansi_tsangan_split_bs_rshift", + "LAYOUT_all": "LAYOUT_60_ansi_tsangan_split_bs_rshift" }, "layouts": { "LAYOUT_60_ansi_wkl_split_bs_rshift": { @@ -224,6 +213,71 @@ {"matrix": [4, 11], "x": 12.5, "y": 4}, {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5} ] + }, + "LAYOUT_60_ansi_tsangan_split_rshift": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 10], "x": 10, "y": 0}, + {"matrix": [0, 11], "x": 11, "y": 0}, + {"matrix": [0, 12], "x": 12, "y": 0}, + {"matrix": [2, 13], "x": 13, "y": 0, "w": 2}, + {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [1, 1], "x": 1.5, "y": 1}, + {"matrix": [1, 2], "x": 2.5, "y": 1}, + {"matrix": [1, 3], "x": 3.5, "y": 1}, + {"matrix": [1, 4], "x": 4.5, "y": 1}, + {"matrix": [1, 5], "x": 5.5, "y": 1}, + {"matrix": [1, 6], "x": 6.5, "y": 1}, + {"matrix": [1, 7], "x": 7.5, "y": 1}, + {"matrix": [1, 8], "x": 8.5, "y": 1}, + {"matrix": [1, 9], "x": 9.5, "y": 1}, + {"matrix": [1, 10], "x": 10.5, "y": 1}, + {"matrix": [1, 11], "x": 11.5, "y": 1}, + {"matrix": [1, 12], "x": 12.5, "y": 1}, + {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [2, 1], "x": 1.75, "y": 2}, + {"matrix": [2, 2], "x": 2.75, "y": 2}, + {"matrix": [2, 3], "x": 3.75, "y": 2}, + {"matrix": [2, 4], "x": 4.75, "y": 2}, + {"matrix": [2, 5], "x": 5.75, "y": 2}, + {"matrix": [2, 6], "x": 6.75, "y": 2}, + {"matrix": [2, 7], "x": 7.75, "y": 2}, + {"matrix": [2, 8], "x": 8.75, "y": 2}, + {"matrix": [2, 9], "x": 9.75, "y": 2}, + {"matrix": [2, 10], "x": 10.75, "y": 2}, + {"matrix": [2, 11], "x": 11.75, "y": 2}, + {"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, + {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [3, 1], "x": 2.25, "y": 3}, + {"matrix": [3, 2], "x": 3.25, "y": 3}, + {"matrix": [3, 3], "x": 4.25, "y": 3}, + {"matrix": [3, 4], "x": 5.25, "y": 3}, + {"matrix": [3, 5], "x": 6.25, "y": 3}, + {"matrix": [3, 6], "x": 7.25, "y": 3}, + {"matrix": [3, 7], "x": 8.25, "y": 3}, + {"matrix": [3, 8], "x": 9.25, "y": 3}, + {"matrix": [3, 9], "x": 10.25, "y": 3}, + {"matrix": [3, 10], "x": 11.25, "y": 3}, + {"matrix": [4, 12], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [3, 13], "x": 14, "y": 3}, + {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, + {"matrix": [4, 1], "x": 1.5, "y": 4}, + {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"matrix": [4, 6], "x": 4, "y": 4, "w": 7}, + {"matrix": [4, 10], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [4, 11], "x": 12.5, "y": 4}, + {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5} + ] } } } diff --git a/keyboards/keyten/kt60hs_t/v1/readme.md b/keyboards/keyten/kt60hs_t/v1/readme.md new file mode 100644 index 0000000000..2f31dbf4bf --- /dev/null +++ b/keyboards/keyten/kt60hs_t/v1/readme.md @@ -0,0 +1,29 @@ +# keyten kt60HS-T V1 + +60% MX Hot-Swap Tsangan PCB + + + +**Note: This firmware only supports the PCB version with STM32F401 controller** + +* Keyboard Maintainer: [keyten](https://github.com/key10iq) +* Hardware Supported: keyten kt60HS-T +* Hardware Availability: private GB + +Make example for this keyboard (after setting up your build environment): + + make keyten/kt60hs_t/v1:default + +Flashing example for this keyboard: + + make keyten/kt60hs_t/v1:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* Bootmagic reset: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* Keycode in layout: Press the key mapped to `QK_BOOT` if it is available +* Physical reset button: Hold the button on the back of the PCB diff --git a/keyboards/keyten/kt60hs_t/v2/keyboard.json b/keyboards/keyten/kt60hs_t/v2/keyboard.json new file mode 100644 index 0000000000..728bd90fe8 --- /dev/null +++ b/keyboards/keyten/kt60hs_t/v2/keyboard.json @@ -0,0 +1,282 @@ +{ + "bootloader": "stm32-dfu", + "diode_direction": "COL2ROW", + "matrix_pins": { + "cols": ["A3", "A4", "A5", "A6", "A7", "B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15", "A14"], + "rows": ["B15", "B14", "B12", "B13", "B0"] + }, + "processor": "STM32F072", + "usb": { + "device_version": "2.0.0", + "pid": "0x6007" + }, + "community_layouts": [ + "60_ansi_wkl_split_bs_rshift", + "60_hhkb", + "60_ansi_tsangan_split_bs_rshift" + ], + "layout_aliases": { + "LAYOUT_all": "LAYOUT_60_ansi_tsangan_split_bs_rshift" + }, + "layouts": { + "LAYOUT_60_ansi_wkl_split_bs_rshift": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 10], "x": 10, "y": 0}, + {"matrix": [0, 11], "x": 11, "y": 0}, + {"matrix": [0, 12], "x": 12, "y": 0}, + {"matrix": [0, 13], "x": 13, "y": 0}, + {"matrix": [2, 13], "x": 14, "y": 0}, + {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [1, 1], "x": 1.5, "y": 1}, + {"matrix": [1, 2], "x": 2.5, "y": 1}, + {"matrix": [1, 3], "x": 3.5, "y": 1}, + {"matrix": [1, 4], "x": 4.5, "y": 1}, + {"matrix": [1, 5], "x": 5.5, "y": 1}, + {"matrix": [1, 6], "x": 6.5, "y": 1}, + {"matrix": [1, 7], "x": 7.5, "y": 1}, + {"matrix": [1, 8], "x": 8.5, "y": 1}, + {"matrix": [1, 9], "x": 9.5, "y": 1}, + {"matrix": [1, 10], "x": 10.5, "y": 1}, + {"matrix": [1, 11], "x": 11.5, "y": 1}, + {"matrix": [1, 12], "x": 12.5, "y": 1}, + {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [2, 1], "x": 1.75, "y": 2}, + {"matrix": [2, 2], "x": 2.75, "y": 2}, + {"matrix": [2, 3], "x": 3.75, "y": 2}, + {"matrix": [2, 4], "x": 4.75, "y": 2}, + {"matrix": [2, 5], "x": 5.75, "y": 2}, + {"matrix": [2, 6], "x": 6.75, "y": 2}, + {"matrix": [2, 7], "x": 7.75, "y": 2}, + {"matrix": [2, 8], "x": 8.75, "y": 2}, + {"matrix": [2, 9], "x": 9.75, "y": 2}, + {"matrix": [2, 10], "x": 10.75, "y": 2}, + {"matrix": [2, 11], "x": 11.75, "y": 2}, + {"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, + {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [3, 1], "x": 2.25, "y": 3}, + {"matrix": [3, 2], "x": 3.25, "y": 3}, + {"matrix": [3, 3], "x": 4.25, "y": 3}, + {"matrix": [3, 4], "x": 5.25, "y": 3}, + {"matrix": [3, 5], "x": 6.25, "y": 3}, + {"matrix": [3, 6], "x": 7.25, "y": 3}, + {"matrix": [3, 7], "x": 8.25, "y": 3}, + {"matrix": [3, 8], "x": 9.25, "y": 3}, + {"matrix": [3, 9], "x": 10.25, "y": 3}, + {"matrix": [3, 10], "x": 11.25, "y": 3}, + {"matrix": [4, 12], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [3, 13], "x": 14, "y": 3}, + {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, + {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"matrix": [4, 6], "x": 4, "y": 4, "w": 7}, + {"matrix": [4, 10], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_60_hhkb": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 10], "x": 10, "y": 0}, + {"matrix": [0, 11], "x": 11, "y": 0}, + {"matrix": [0, 12], "x": 12, "y": 0}, + {"matrix": [0, 13], "x": 13, "y": 0}, + {"matrix": [2, 13], "x": 14, "y": 0}, + {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [1, 1], "x": 1.5, "y": 1}, + {"matrix": [1, 2], "x": 2.5, "y": 1}, + {"matrix": [1, 3], "x": 3.5, "y": 1}, + {"matrix": [1, 4], "x": 4.5, "y": 1}, + {"matrix": [1, 5], "x": 5.5, "y": 1}, + {"matrix": [1, 6], "x": 6.5, "y": 1}, + {"matrix": [1, 7], "x": 7.5, "y": 1}, + {"matrix": [1, 8], "x": 8.5, "y": 1}, + {"matrix": [1, 9], "x": 9.5, "y": 1}, + {"matrix": [1, 10], "x": 10.5, "y": 1}, + {"matrix": [1, 11], "x": 11.5, "y": 1}, + {"matrix": [1, 12], "x": 12.5, "y": 1}, + {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [2, 1], "x": 1.75, "y": 2}, + {"matrix": [2, 2], "x": 2.75, "y": 2}, + {"matrix": [2, 3], "x": 3.75, "y": 2}, + {"matrix": [2, 4], "x": 4.75, "y": 2}, + {"matrix": [2, 5], "x": 5.75, "y": 2}, + {"matrix": [2, 6], "x": 6.75, "y": 2}, + {"matrix": [2, 7], "x": 7.75, "y": 2}, + {"matrix": [2, 8], "x": 8.75, "y": 2}, + {"matrix": [2, 9], "x": 9.75, "y": 2}, + {"matrix": [2, 10], "x": 10.75, "y": 2}, + {"matrix": [2, 11], "x": 11.75, "y": 2}, + {"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, + {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [3, 1], "x": 2.25, "y": 3}, + {"matrix": [3, 2], "x": 3.25, "y": 3}, + {"matrix": [3, 3], "x": 4.25, "y": 3}, + {"matrix": [3, 4], "x": 5.25, "y": 3}, + {"matrix": [3, 5], "x": 6.25, "y": 3}, + {"matrix": [3, 6], "x": 7.25, "y": 3}, + {"matrix": [3, 7], "x": 8.25, "y": 3}, + {"matrix": [3, 8], "x": 9.25, "y": 3}, + {"matrix": [3, 9], "x": 10.25, "y": 3}, + {"matrix": [3, 10], "x": 11.25, "y": 3}, + {"matrix": [4, 12], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [3, 13], "x": 14, "y": 3}, + {"matrix": [4, 1], "x": 1.5, "y": 4}, + {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"matrix": [4, 6], "x": 4, "y": 4, "w": 7}, + {"matrix": [4, 10], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [4, 11], "x": 12.5, "y": 4} + ] + }, + "LAYOUT_60_ansi_tsangan_split_bs_rshift": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 10], "x": 10, "y": 0}, + {"matrix": [0, 11], "x": 11, "y": 0}, + {"matrix": [0, 12], "x": 12, "y": 0}, + {"matrix": [0, 13], "x": 13, "y": 0}, + {"matrix": [2, 13], "x": 14, "y": 0}, + {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [1, 1], "x": 1.5, "y": 1}, + {"matrix": [1, 2], "x": 2.5, "y": 1}, + {"matrix": [1, 3], "x": 3.5, "y": 1}, + {"matrix": [1, 4], "x": 4.5, "y": 1}, + {"matrix": [1, 5], "x": 5.5, "y": 1}, + {"matrix": [1, 6], "x": 6.5, "y": 1}, + {"matrix": [1, 7], "x": 7.5, "y": 1}, + {"matrix": [1, 8], "x": 8.5, "y": 1}, + {"matrix": [1, 9], "x": 9.5, "y": 1}, + {"matrix": [1, 10], "x": 10.5, "y": 1}, + {"matrix": [1, 11], "x": 11.5, "y": 1}, + {"matrix": [1, 12], "x": 12.5, "y": 1}, + {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [2, 1], "x": 1.75, "y": 2}, + {"matrix": [2, 2], "x": 2.75, "y": 2}, + {"matrix": [2, 3], "x": 3.75, "y": 2}, + {"matrix": [2, 4], "x": 4.75, "y": 2}, + {"matrix": [2, 5], "x": 5.75, "y": 2}, + {"matrix": [2, 6], "x": 6.75, "y": 2}, + {"matrix": [2, 7], "x": 7.75, "y": 2}, + {"matrix": [2, 8], "x": 8.75, "y": 2}, + {"matrix": [2, 9], "x": 9.75, "y": 2}, + {"matrix": [2, 10], "x": 10.75, "y": 2}, + {"matrix": [2, 11], "x": 11.75, "y": 2}, + {"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, + {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [3, 1], "x": 2.25, "y": 3}, + {"matrix": [3, 2], "x": 3.25, "y": 3}, + {"matrix": [3, 3], "x": 4.25, "y": 3}, + {"matrix": [3, 4], "x": 5.25, "y": 3}, + {"matrix": [3, 5], "x": 6.25, "y": 3}, + {"matrix": [3, 6], "x": 7.25, "y": 3}, + {"matrix": [3, 7], "x": 8.25, "y": 3}, + {"matrix": [3, 8], "x": 9.25, "y": 3}, + {"matrix": [3, 9], "x": 10.25, "y": 3}, + {"matrix": [3, 10], "x": 11.25, "y": 3}, + {"matrix": [4, 12], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [3, 13], "x": 14, "y": 3}, + {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, + {"matrix": [4, 1], "x": 1.5, "y": 4}, + {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"matrix": [4, 6], "x": 4, "y": 4, "w": 7}, + {"matrix": [4, 10], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [4, 11], "x": 12.5, "y": 4}, + {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5} + ] + }, + "LAYOUT_60_ansi_tsangan_split_rshift": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 10], "x": 10, "y": 0}, + {"matrix": [0, 11], "x": 11, "y": 0}, + {"matrix": [0, 12], "x": 12, "y": 0}, + {"matrix": [2, 13], "x": 13, "y": 0, "w": 2}, + {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, + {"matrix": [1, 1], "x": 1.5, "y": 1}, + {"matrix": [1, 2], "x": 2.5, "y": 1}, + {"matrix": [1, 3], "x": 3.5, "y": 1}, + {"matrix": [1, 4], "x": 4.5, "y": 1}, + {"matrix": [1, 5], "x": 5.5, "y": 1}, + {"matrix": [1, 6], "x": 6.5, "y": 1}, + {"matrix": [1, 7], "x": 7.5, "y": 1}, + {"matrix": [1, 8], "x": 8.5, "y": 1}, + {"matrix": [1, 9], "x": 9.5, "y": 1}, + {"matrix": [1, 10], "x": 10.5, "y": 1}, + {"matrix": [1, 11], "x": 11.5, "y": 1}, + {"matrix": [1, 12], "x": 12.5, "y": 1}, + {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"matrix": [2, 1], "x": 1.75, "y": 2}, + {"matrix": [2, 2], "x": 2.75, "y": 2}, + {"matrix": [2, 3], "x": 3.75, "y": 2}, + {"matrix": [2, 4], "x": 4.75, "y": 2}, + {"matrix": [2, 5], "x": 5.75, "y": 2}, + {"matrix": [2, 6], "x": 6.75, "y": 2}, + {"matrix": [2, 7], "x": 7.75, "y": 2}, + {"matrix": [2, 8], "x": 8.75, "y": 2}, + {"matrix": [2, 9], "x": 9.75, "y": 2}, + {"matrix": [2, 10], "x": 10.75, "y": 2}, + {"matrix": [2, 11], "x": 11.75, "y": 2}, + {"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, + {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [3, 1], "x": 2.25, "y": 3}, + {"matrix": [3, 2], "x": 3.25, "y": 3}, + {"matrix": [3, 3], "x": 4.25, "y": 3}, + {"matrix": [3, 4], "x": 5.25, "y": 3}, + {"matrix": [3, 5], "x": 6.25, "y": 3}, + {"matrix": [3, 6], "x": 7.25, "y": 3}, + {"matrix": [3, 7], "x": 8.25, "y": 3}, + {"matrix": [3, 8], "x": 9.25, "y": 3}, + {"matrix": [3, 9], "x": 10.25, "y": 3}, + {"matrix": [3, 10], "x": 11.25, "y": 3}, + {"matrix": [4, 12], "x": 12.25, "y": 3, "w": 1.75}, + {"matrix": [3, 13], "x": 14, "y": 3}, + {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5}, + {"matrix": [4, 1], "x": 1.5, "y": 4}, + {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5}, + {"matrix": [4, 6], "x": 4, "y": 4, "w": 7}, + {"matrix": [4, 10], "x": 11, "y": 4, "w": 1.5}, + {"matrix": [4, 11], "x": 12.5, "y": 4}, + {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5} + ] + } + } +} diff --git a/keyboards/keyten/kt60hs_t/v2/readme.md b/keyboards/keyten/kt60hs_t/v2/readme.md new file mode 100644 index 0000000000..db2b8afccf --- /dev/null +++ b/keyboards/keyten/kt60hs_t/v2/readme.md @@ -0,0 +1,29 @@ +# keyten kt60HS-T V2 + +60% MX Hot-Swap Tsangan PCB + + + +**Note: This firmware only supports the PCB version with STM32F072 controller** + +* Keyboard Maintainer: [keyten](https://github.com/key10iq) +* Hardware Supported: keyten kt60HS-T V2 +* Hardware Availability: private GB + +Make example for this keyboard (after setting up your build environment): + + make keyten/kt60hs_t/v2:default + +Flashing example for this keyboard: + + make keyten/kt60hs_t/v2:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* Bootmagic reset: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* Keycode in layout: Press the key mapped to `QK_BOOT` if it is available +* Physical reset button: Hold the button on the back of the PCB diff --git a/keyboards/keyten/lisa/keyboard.json b/keyboards/keyten/lisa/keyboard.json index deac0f3740..a370a7add1 100644 --- a/keyboards/keyten/lisa/keyboard.json +++ b/keyboards/keyten/lisa/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kezewa/enter67/keyboard.json b/keyboards/kezewa/enter67/keyboard.json index df1d7f6b5b..eca9311377 100644 --- a/keyboards/kezewa/enter67/keyboard.json +++ b/keyboards/kezewa/enter67/keyboard.json @@ -19,7 +19,6 @@ "rows": ["A1", "A2", "A3", "A4", "A5"] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "0.0.1", "pid": "0xAA66", diff --git a/keyboards/kezewa/enter80/keyboard.json b/keyboards/kezewa/enter80/keyboard.json index a4fe83b3ac..9e62163192 100644 --- a/keyboards/kezewa/enter80/keyboard.json +++ b/keyboards/kezewa/enter80/keyboard.json @@ -19,7 +19,6 @@ "cols": ["A1", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "B11", "B12", "B13", "B14", "A8", "A9", "A10", "A15", "B3"], "rows": ["B4", "B5", "B6", "B15", "B10", "B7"] }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0xFF65", diff --git a/keyboards/kibou/fukuro/keyboard.json b/keyboards/kibou/fukuro/keyboard.json index fa50cca964..9588cb9ff7 100644 --- a/keyboards/kibou/fukuro/keyboard.json +++ b/keyboards/kibou/fukuro/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["A9", "A10", "C13", "A0", "A6"] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x0003", diff --git a/keyboards/kibou/harbour/keyboard.json b/keyboards/kibou/harbour/keyboard.json index a5417e1ae5..15249a9c97 100644 --- a/keyboards/kibou/harbour/keyboard.json +++ b/keyboards/kibou/harbour/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kibou/suisei/keyboard.json b/keyboards/kibou/suisei/keyboard.json index f212df1bc7..283e6f6895 100644 --- a/keyboards/kibou/suisei/keyboard.json +++ b/keyboards/kibou/suisei/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kibou/wendy/keyboard.json b/keyboards/kibou/wendy/keyboard.json index 1ab0ca8e7f..99e0ddb84d 100644 --- a/keyboards/kibou/wendy/keyboard.json +++ b/keyboards/kibou/wendy/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kibou/winter/keyboard.json b/keyboards/kibou/winter/keyboard.json index 47a359ec9b..14f912ceb4 100644 --- a/keyboards/kibou/winter/keyboard.json +++ b/keyboards/kibou/winter/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kikkou/keyboard.json b/keyboards/kikkou/keyboard.json index af684bbc29..4285d3a515 100644 --- a/keyboards/kikkou/keyboard.json +++ b/keyboards/kikkou/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Kikkou", "manufacturer": "Mechwerkes", - "url": "", "maintainer": "Mechwerkes", "usb": { "vid": "0x6D65", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kikoslab/ellora65/keyboard.json b/keyboards/kikoslab/ellora65/keyboard.json index fdb60e4791..3a8ace7879 100644 --- a/keyboards/kikoslab/ellora65/keyboard.json +++ b/keyboards/kikoslab/ellora65/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/kikoslab/kl90/keyboard.json b/keyboards/kikoslab/kl90/keyboard.json index 0a107dfba8..af030fb86b 100644 --- a/keyboards/kikoslab/kl90/keyboard.json +++ b/keyboards/kikoslab/kl90/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/kin80/info.json b/keyboards/kin80/info.json index 395742d88b..df58894b92 100644 --- a/keyboards/kin80/info.json +++ b/keyboards/kin80/info.json @@ -4,8 +4,6 @@ "maintainer": "DmNosachev", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/kindakeyboards/conone65/keyboard.json b/keyboards/kindakeyboards/conone65/keyboard.json index 6786b6a3d5..46df385527 100644 --- a/keyboards/kindakeyboards/conone65/keyboard.json +++ b/keyboards/kindakeyboards/conone65/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/kinesis/alvicstep/keyboard.json b/keyboards/kinesis/alvicstep/keyboard.json index 951f01203c..dea99f66ef 100644 --- a/keyboards/kinesis/alvicstep/keyboard.json +++ b/keyboards/kinesis/alvicstep/keyboard.json @@ -8,8 +8,6 @@ }, "features": { "bootmagic": true, - "console": false, - "command": false, "mousekey": true, "extrakey": true, "nkro": true diff --git a/keyboards/kinesis/info.json b/keyboards/kinesis/info.json index 49025977bd..066f072ebd 100644 --- a/keyboards/kinesis/info.json +++ b/keyboards/kinesis/info.json @@ -1,5 +1,4 @@ { - "url": "", "maintainer": "qmk", "qmk": { "locking": { diff --git a/keyboards/kinesis/kint2pp/keyboard.json b/keyboards/kinesis/kint2pp/keyboard.json index 48d77942db..3b00cfff46 100644 --- a/keyboards/kinesis/kint2pp/keyboard.json +++ b/keyboards/kinesis/kint2pp/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "console": false, - "command": false, "mousekey": true, "extrakey": true, "nkro": true diff --git a/keyboards/kinesis/kint36/keyboard.json b/keyboards/kinesis/kint36/keyboard.json index 592fade4cb..02df04a7c9 100644 --- a/keyboards/kinesis/kint36/keyboard.json +++ b/keyboards/kinesis/kint36/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "console": false, - "command": false, "mousekey": true, "extrakey": true, "nkro": true diff --git a/keyboards/kinesis/kint41/keyboard.json b/keyboards/kinesis/kint41/keyboard.json index c1eb7b8465..25ebd64fb9 100644 --- a/keyboards/kinesis/kint41/keyboard.json +++ b/keyboards/kinesis/kint41/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "console": false, - "command": false, "mousekey": true, "extrakey": true, "nkro": true diff --git a/keyboards/kinesis/kintlc/keyboard.json b/keyboards/kinesis/kintlc/keyboard.json index 07c81e1c89..8d12eb2fe4 100644 --- a/keyboards/kinesis/kintlc/keyboard.json +++ b/keyboards/kinesis/kintlc/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "console": false, - "command": false, "mousekey": true, "extrakey": true, "nkro": true diff --git a/keyboards/kinesis/kintwin/keyboard.json b/keyboards/kinesis/kintwin/keyboard.json index 92727e9ecb..e4a42f3696 100644 --- a/keyboards/kinesis/kintwin/keyboard.json +++ b/keyboards/kinesis/kintwin/keyboard.json @@ -14,8 +14,6 @@ }, "features": { "bootmagic": true, - "console": false, - "command": false, "mousekey": true, "extrakey": true, "nkro": true diff --git a/keyboards/kinesis/nguyenvietyen/keyboard.json b/keyboards/kinesis/nguyenvietyen/keyboard.json index 68bdd0f767..f1765183cc 100644 --- a/keyboards/kinesis/nguyenvietyen/keyboard.json +++ b/keyboards/kinesis/nguyenvietyen/keyboard.json @@ -8,7 +8,6 @@ }, "features": { "bootmagic": true, - "console": false, "command": true, "mousekey": true, "extrakey": true, diff --git a/keyboards/kinesis/stapelberg/keyboard.json b/keyboards/kinesis/stapelberg/keyboard.json index 6ad972d247..fbc955ebe2 100644 --- a/keyboards/kinesis/stapelberg/keyboard.json +++ b/keyboards/kinesis/stapelberg/keyboard.json @@ -8,8 +8,6 @@ }, "features": { "bootmagic": true, - "console": false, - "command": false, "mousekey": true, "extrakey": true, "nkro": true diff --git a/keyboards/kineticlabs/emu/hotswap/keyboard.json b/keyboards/kineticlabs/emu/hotswap/keyboard.json index ec53c2f6bf..6a974fd410 100644 --- a/keyboards/kineticlabs/emu/hotswap/keyboard.json +++ b/keyboards/kineticlabs/emu/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Emu Hotswap", "manufacturer": "Kineticlabs", - "url": "", "maintainer": "kb-elmo<[email protected]>", "usb": { "vid": "0xE015", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/kineticlabs/emu/soldered/keyboard.json b/keyboards/kineticlabs/emu/soldered/keyboard.json index 4aaf523d2a..5cbb524fdf 100644 --- a/keyboards/kineticlabs/emu/soldered/keyboard.json +++ b/keyboards/kineticlabs/emu/soldered/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Emu Soldered", "manufacturer": "Kineticlabs", - "url": "", "maintainer": "kb-elmo<[email protected]>", "usb": { "vid": "0xE015", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/kingly_keys/ave/ortho/keyboard.json b/keyboards/kingly_keys/ave/ortho/keyboard.json index 27fb2666a2..3720ac7f5a 100644 --- a/keyboards/kingly_keys/ave/ortho/keyboard.json +++ b/keyboards/kingly_keys/ave/ortho/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "The Ave. Ortholinear", "manufacturer": "Kingly-Keys", - "url": "", "maintainer": "the-royal", "usb": { "vid": "0x4B4B", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/kingly_keys/ave/staggered/keyboard.json b/keyboards/kingly_keys/ave/staggered/keyboard.json index 5fcb1657e3..1d05272459 100644 --- a/keyboards/kingly_keys/ave/staggered/keyboard.json +++ b/keyboards/kingly_keys/ave/staggered/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "The Ave. Staggered", "manufacturer": "Kingly-Keys", - "url": "", "maintainer": "the-royal", "usb": { "vid": "0x4B4B", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/kingly_keys/little_foot/keyboard.json b/keyboards/kingly_keys/little_foot/keyboard.json index a511d48905..2af4432d47 100644 --- a/keyboards/kingly_keys/little_foot/keyboard.json +++ b/keyboards/kingly_keys/little_foot/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "The Little Foot", "manufacturer": "Kingly-Keys", - "url": "", "maintainer": "TheRoyalSweatshirt", "usb": { "vid": "0xFEED", @@ -32,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kingly_keys/romac/keyboard.json b/keyboards/kingly_keys/romac/keyboard.json index 9927bdc25f..40c8dea64f 100644 --- a/keyboards/kingly_keys/romac/keyboard.json +++ b/keyboards/kingly_keys/romac/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RoMac", "manufacturer": "TheRoyalSweatshirt", - "url": "", "maintainer": "TheRoyalSweatshirt", "usb": { "vid": "0x4B4B", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kingly_keys/romac_plus/keyboard.json b/keyboards/kingly_keys/romac_plus/keyboard.json index 8b6c43333d..b0b2f487cb 100644 --- a/keyboards/kingly_keys/romac_plus/keyboard.json +++ b/keyboards/kingly_keys/romac_plus/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RoMac+", "manufacturer": "TheRoyalSweatshirt", - "url": "", "maintainer": "TheRoyalSweatshirt", "usb": { "vid": "0x4B4B", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/kingly_keys/ropro/keyboard.json b/keyboards/kingly_keys/ropro/keyboard.json index fb22d06a7d..6a70aca089 100644 --- a/keyboards/kingly_keys/ropro/keyboard.json +++ b/keyboards/kingly_keys/ropro/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/kingly_keys/smd_milk/keyboard.json b/keyboards/kingly_keys/smd_milk/keyboard.json index 9f8a10a5bf..943599dad1 100644 --- a/keyboards/kingly_keys/smd_milk/keyboard.json +++ b/keyboards/kingly_keys/smd_milk/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "SMD-2% Milk", "manufacturer": "Kingly-Keys", - "url": "", "maintainer": "TheRoyalSweatshirt", "usb": { "vid": "0xFEED", diff --git a/keyboards/kingly_keys/soap/keyboard.json b/keyboards/kingly_keys/soap/keyboard.json index 615014ffbf..78660c4f6d 100644 --- a/keyboards/kingly_keys/soap/keyboard.json +++ b/keyboards/kingly_keys/soap/keyboard.json @@ -28,8 +28,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/kira/kira75/keyboard.json b/keyboards/kira/kira75/keyboard.json index fb4c90a8b5..a974b10161 100644 --- a/keyboards/kira/kira75/keyboard.json +++ b/keyboards/kira/kira75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Kira 75", "manufacturer": "thesiscamper", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/kira/kira80/keyboard.json b/keyboards/kira/kira80/keyboard.json index 137e1f6565..c66c919a42 100644 --- a/keyboards/kira/kira80/keyboard.json +++ b/keyboards/kira/kira80/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Kira80", "manufacturer": "EVE", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x6986", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/kiserdesigns/madeline/keyboard.json b/keyboards/kiserdesigns/madeline/keyboard.json index 8a1a988a6f..5fdcd981f1 100644 --- a/keyboards/kiserdesigns/madeline/keyboard.json +++ b/keyboards/kiserdesigns/madeline/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kiwikeebs/macro/keyboard.json b/keyboards/kiwikeebs/macro/keyboard.json index faaebe88cf..98d8171944 100644 --- a/keyboards/kiwikeebs/macro/keyboard.json +++ b/keyboards/kiwikeebs/macro/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/kiwikeebs/macro_v2/keyboard.json b/keyboards/kiwikeebs/macro_v2/keyboard.json index 3848457990..9947f48f63 100644 --- a/keyboards/kiwikeebs/macro_v2/keyboard.json +++ b/keyboards/kiwikeebs/macro_v2/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/kiwikey/wanderland/keyboard.json b/keyboards/kiwikey/wanderland/keyboard.json index 3dd7c668ac..1c2067942f 100644 --- a/keyboards/kiwikey/wanderland/keyboard.json +++ b/keyboards/kiwikey/wanderland/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/kj_modify/rs40/keyboard.json b/keyboards/kj_modify/rs40/keyboard.json index a869383bd7..44ce821d57 100644 --- a/keyboards/kj_modify/rs40/keyboard.json +++ b/keyboards/kj_modify/rs40/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kk/65/keyboard.json b/keyboards/kk/65/keyboard.json index 49c52eec80..27ff4073ee 100644 --- a/keyboards/kk/65/keyboard.json +++ b/keyboards/kk/65/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -23,7 +21,6 @@ "rows": ["D7", "B4", "B5", "B6", "B7"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/kkatano/bakeneko60/keyboard.json b/keyboards/kkatano/bakeneko60/keyboard.json index 094cc71728..d4188b7c0f 100644 --- a/keyboards/kkatano/bakeneko60/keyboard.json +++ b/keyboards/kkatano/bakeneko60/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/kkatano/bakeneko65/rev2/keyboard.json b/keyboards/kkatano/bakeneko65/rev2/keyboard.json index 93ac8a5e50..ae13085586 100644 --- a/keyboards/kkatano/bakeneko65/rev2/keyboard.json +++ b/keyboards/kkatano/bakeneko65/rev2/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/kkatano/bakeneko65/rev3/keyboard.json b/keyboards/kkatano/bakeneko65/rev3/keyboard.json index 3892da5d04..efc1697166 100644 --- a/keyboards/kkatano/bakeneko65/rev3/keyboard.json +++ b/keyboards/kkatano/bakeneko65/rev3/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/knobgoblin/keyboard.json b/keyboards/knobgoblin/keyboard.json index 8494eea465..4cc00e26cd 100644 --- a/keyboards/knobgoblin/keyboard.json +++ b/keyboards/knobgoblin/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Knob Goblin", "manufacturer": "MrT1ddl3s", - "url": "", "maintainer": "MrT1ddl3s", "usb": { "vid": "0x4B47", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "encoder": true, "extrakey": true, diff --git a/keyboards/kona_classic/keyboard.json b/keyboards/kona_classic/keyboard.json index 79bef89bb6..716df4759f 100644 --- a/keyboards/kona_classic/keyboard.json +++ b/keyboards/kona_classic/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Kona Classic", "manufacturer": "Dangerous Parts", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/kopibeng/mnk60/keyboard.json b/keyboards/kopibeng/mnk60/keyboard.json index 0477ac560d..3daec9131d 100644 --- a/keyboards/kopibeng/mnk60/keyboard.json +++ b/keyboards/kopibeng/mnk60/keyboard.json @@ -14,7 +14,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kopibeng/mnk60_stm32/keyboard.json b/keyboards/kopibeng/mnk60_stm32/keyboard.json index 8b2278aff0..75d7361aec 100644 --- a/keyboards/kopibeng/mnk60_stm32/keyboard.json +++ b/keyboards/kopibeng/mnk60_stm32/keyboard.json @@ -7,7 +7,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kopibeng/mnk65_stm32/keyboard.json b/keyboards/kopibeng/mnk65_stm32/keyboard.json index c71394ba84..e425863d70 100644 --- a/keyboards/kopibeng/mnk65_stm32/keyboard.json +++ b/keyboards/kopibeng/mnk65_stm32/keyboard.json @@ -7,7 +7,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kopibeng/tgr_lena/keyboard.json b/keyboards/kopibeng/tgr_lena/keyboard.json index 2460b04a5a..a526c26e52 100644 --- a/keyboards/kopibeng/tgr_lena/keyboard.json +++ b/keyboards/kopibeng/tgr_lena/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kopibeng/typ65/keyboard.json b/keyboards/kopibeng/typ65/keyboard.json index 57a23da4ad..aedb7cb7d9 100644 --- a/keyboards/kopibeng/typ65/keyboard.json +++ b/keyboards/kopibeng/typ65/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/kopibeng/xt60/keyboard.json b/keyboards/kopibeng/xt60/keyboard.json index 24dc8f490b..1cb770f8df 100644 --- a/keyboards/kopibeng/xt60/keyboard.json +++ b/keyboards/kopibeng/xt60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XT60", "manufacturer": "kopibeng", - "url": "", "maintainer": "Kopibeng", "usb": { "vid": "0x4B50", @@ -25,8 +24,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kopibeng/xt60_singa/keyboard.json b/keyboards/kopibeng/xt60_singa/keyboard.json index b1d239cd20..3a7726310a 100644 --- a/keyboards/kopibeng/xt60_singa/keyboard.json +++ b/keyboards/kopibeng/xt60_singa/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XT60_SINGA", "manufacturer": "kopibeng", - "url": "", "maintainer": "Kopibeng", "usb": { "vid": "0x4B50", @@ -25,8 +24,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kopibeng/xt65/keyboard.json b/keyboards/kopibeng/xt65/keyboard.json index c73ff703d5..47d1fdeeed 100644 --- a/keyboards/kopibeng/xt65/keyboard.json +++ b/keyboards/kopibeng/xt65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XT65", "manufacturer": "kopibeng", - "url": "", "maintainer": "kopibeng", "usb": { "vid": "0x4B50", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kopibeng/xt8x/keyboard.json b/keyboards/kopibeng/xt8x/keyboard.json index 7167cb1d07..ad6c044982 100644 --- a/keyboards/kopibeng/xt8x/keyboard.json +++ b/keyboards/kopibeng/xt8x/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XT8x", "manufacturer": "kopibeng", - "url": "", "maintainer": "kopibeng", "usb": { "vid": "0x4B50", diff --git a/keyboards/kprepublic/bm16a/v1/keyboard.json b/keyboards/kprepublic/bm16a/v1/keyboard.json index 85173a89cc..ee31afbcf5 100644 --- a/keyboards/kprepublic/bm16a/v1/keyboard.json +++ b/keyboards/kprepublic/bm16a/v1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "bm16a", "manufacturer": "KPrepublic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B50", @@ -14,8 +13,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "backlight": true, "rgblight": true diff --git a/keyboards/kprepublic/bm16a/v2/keyboard.json b/keyboards/kprepublic/bm16a/v2/keyboard.json index e922d0b9ee..b4ef622f4a 100644 --- a/keyboards/kprepublic/bm16a/v2/keyboard.json +++ b/keyboards/kprepublic/bm16a/v2/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -22,7 +20,6 @@ "rows": ["A8", "A9", "B5", "B3"] }, "processor": "STM32F103", // GD32F303CCT6 - "url": "", "usb": { "device_version": "0.0.2", "pid": "0x016C", diff --git a/keyboards/kprepublic/bm16s/keyboard.json b/keyboards/kprepublic/bm16s/keyboard.json index 8c6ce05bb9..fe259c2fc9 100644 --- a/keyboards/kprepublic/bm16s/keyboard.json +++ b/keyboards/kprepublic/bm16s/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "bm16s", "manufacturer": "KPrepublic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B50", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kprepublic/bm40hsrgb/rev1/keyboard.json b/keyboards/kprepublic/bm40hsrgb/rev1/keyboard.json index 7bdeafbcad..5cad0a013a 100644 --- a/keyboards/kprepublic/bm40hsrgb/rev1/keyboard.json +++ b/keyboards/kprepublic/bm40hsrgb/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM40 Hotswap RGB", "manufacturer": "KPRepublic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B50", @@ -66,8 +65,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/kprepublic/bm40hsrgb/rev2/keyboard.json b/keyboards/kprepublic/bm40hsrgb/rev2/keyboard.json index 525a6088ed..c38be9612f 100644 --- a/keyboards/kprepublic/bm40hsrgb/rev2/keyboard.json +++ b/keyboards/kprepublic/bm40hsrgb/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM40 Hotswap RGB", "manufacturer": "KPRepublic", - "url": "", "maintainer": "qmk", "features": { "bootmagic": true, @@ -10,8 +9,6 @@ "rgblight": true, "rgb_matrix": true, "tri_layer": true, - "console": false, - "command": false, "nkro": false }, "build": { diff --git a/keyboards/kprepublic/bm43a/keyboard.json b/keyboards/kprepublic/bm43a/keyboard.json index 79c089c68c..28c8f259d1 100644 --- a/keyboards/kprepublic/bm43a/keyboard.json +++ b/keyboards/kprepublic/bm43a/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM43A", "manufacturer": "KPRepublic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/kprepublic/bm43hsrgb/keyboard.json b/keyboards/kprepublic/bm43hsrgb/keyboard.json index 9fa40bdd9c..3aeba0ef91 100755 --- a/keyboards/kprepublic/bm43hsrgb/keyboard.json +++ b/keyboards/kprepublic/bm43hsrgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM43 Hotswap RGB", "manufacturer": "KPRepublic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B50", @@ -31,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/kprepublic/bm60hsrgb/rev1/keyboard.json b/keyboards/kprepublic/bm60hsrgb/rev1/keyboard.json index 5fe5d21014..55ec5589d1 100644 --- a/keyboards/kprepublic/bm60hsrgb/rev1/keyboard.json +++ b/keyboards/kprepublic/bm60hsrgb/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM60HSRGB", "manufacturer": "KP Republic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B50", @@ -68,8 +67,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/kprepublic/bm60hsrgb/rev2/keyboard.json b/keyboards/kprepublic/bm60hsrgb/rev2/keyboard.json index a82d5159cf..3783ebb8b2 100644 --- a/keyboards/kprepublic/bm60hsrgb/rev2/keyboard.json +++ b/keyboards/kprepublic/bm60hsrgb/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM60V2", "manufacturer": "KP Republic", - "url": "", "maintainer": "bdtc123", "usb": { "vid": "0x4B50", diff --git a/keyboards/kprepublic/bm60hsrgb_ec/rev1/keyboard.json b/keyboards/kprepublic/bm60hsrgb_ec/rev1/keyboard.json index 0a9b283131..75e8333f7a 100644 --- a/keyboards/kprepublic/bm60hsrgb_ec/rev1/keyboard.json +++ b/keyboards/kprepublic/bm60hsrgb_ec/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM60HSRGB_EC Rev1", "manufacturer": "KP Republic", - "url": "", "maintainer": "peepeetee", "usb": { "vid": "0x4B50", @@ -59,8 +58,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/kprepublic/bm60hsrgb_ec/rev2/keyboard.json b/keyboards/kprepublic/bm60hsrgb_ec/rev2/keyboard.json index 09124e03a9..dd43d36d71 100644 --- a/keyboards/kprepublic/bm60hsrgb_ec/rev2/keyboard.json +++ b/keyboards/kprepublic/bm60hsrgb_ec/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM60HSRGB_EC Rev2", "manufacturer": "KP Republic", - "url": "", "maintainer": "peepeetee", "usb": { "vid": "0x4B50", @@ -66,8 +65,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/kprepublic/bm60hsrgb_iso/rev1/keyboard.json b/keyboards/kprepublic/bm60hsrgb_iso/rev1/keyboard.json index 4cd2c48440..b3bf6e44b2 100644 --- a/keyboards/kprepublic/bm60hsrgb_iso/rev1/keyboard.json +++ b/keyboards/kprepublic/bm60hsrgb_iso/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM60HSRGB_ISO Rev1", "manufacturer": "KPRepublic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B50", @@ -65,8 +64,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/kprepublic/bm60hsrgb_iso/rev2/keyboard.json b/keyboards/kprepublic/bm60hsrgb_iso/rev2/keyboard.json index e84817122e..3a0df3e414 100644 --- a/keyboards/kprepublic/bm60hsrgb_iso/rev2/keyboard.json +++ b/keyboards/kprepublic/bm60hsrgb_iso/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM60HSRGB_ISO Rev2", "manufacturer": "KPRepublic", - "url": "", "maintainer": "kp republic", "usb": { "vid": "0x4B50", diff --git a/keyboards/kprepublic/bm60hsrgb_poker/rev1/keyboard.json b/keyboards/kprepublic/bm60hsrgb_poker/rev1/keyboard.json index d7923b8432..9619665e6d 100644 --- a/keyboards/kprepublic/bm60hsrgb_poker/rev1/keyboard.json +++ b/keyboards/kprepublic/bm60hsrgb_poker/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM60HSRGB Poker Rev1", "manufacturer": "KPrepublic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B50", @@ -80,8 +79,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/kprepublic/bm60hsrgb_poker/rev2/keyboard.json b/keyboards/kprepublic/bm60hsrgb_poker/rev2/keyboard.json index 62ff452a68..f3edf59fec 100644 --- a/keyboards/kprepublic/bm60hsrgb_poker/rev2/keyboard.json +++ b/keyboards/kprepublic/bm60hsrgb_poker/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM60HSRGB Poker Rev2", "manufacturer": "KPrepublic", - "url": "", "maintainer": "bdtc123", "usb": { "vid": "0x4B50", diff --git a/keyboards/kprepublic/bm65hsrgb/rev1/keyboard.json b/keyboards/kprepublic/bm65hsrgb/rev1/keyboard.json index dc63acfa41..d761606a5a 100644 --- a/keyboards/kprepublic/bm65hsrgb/rev1/keyboard.json +++ b/keyboards/kprepublic/bm65hsrgb/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM65HSRGB", "manufacturer": "KPrepublic", - "url": "", "maintainer": "bytesapart", "usb": { "vid": "0x4B50", @@ -19,8 +18,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kprepublic/bm65hsrgb_iso/rev1/keyboard.json b/keyboards/kprepublic/bm65hsrgb_iso/rev1/keyboard.json index 53b132713c..e9e330b160 100644 --- a/keyboards/kprepublic/bm65hsrgb_iso/rev1/keyboard.json +++ b/keyboards/kprepublic/bm65hsrgb_iso/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM65HSRGB ISO", "manufacturer": "KPrepublic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B50", @@ -86,8 +85,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kprepublic/bm68hsrgb/rev1/keyboard.json b/keyboards/kprepublic/bm68hsrgb/rev1/keyboard.json index 6e2d3a9208..b5ca4d696d 100644 --- a/keyboards/kprepublic/bm68hsrgb/rev1/keyboard.json +++ b/keyboards/kprepublic/bm68hsrgb/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM68HSRGB Rev1", "manufacturer": "KPrepublic", - "url": "", "maintainer": "peepeetee", "usb": { "vid": "0x4B50", @@ -65,8 +64,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kprepublic/bm68hsrgb/rev2/keyboard.json b/keyboards/kprepublic/bm68hsrgb/rev2/keyboard.json index 7df1af5902..28ad31304e 100644 --- a/keyboards/kprepublic/bm68hsrgb/rev2/keyboard.json +++ b/keyboards/kprepublic/bm68hsrgb/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM68HSRGB Rev2", "manufacturer": "KPrepublic", - "url": "", "maintainer": "bdtc123", "usb": { "vid": "0x4B50", @@ -72,8 +71,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/kprepublic/bm80hsrgb/keyboard.json b/keyboards/kprepublic/bm80hsrgb/keyboard.json index 5a4d65fbcd..1a1b1a6ed3 100644 --- a/keyboards/kprepublic/bm80hsrgb/keyboard.json +++ b/keyboards/kprepublic/bm80hsrgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM80HSRGB", "manufacturer": "KPRepublic", - "url": "", "maintainer": "peepeetee", "usb": { "vid": "0x4B50", @@ -63,8 +62,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/kprepublic/bm80v2/keyboard.json b/keyboards/kprepublic/bm80v2/keyboard.json index dd985550bb..43de1e4933 100644 --- a/keyboards/kprepublic/bm80v2/keyboard.json +++ b/keyboards/kprepublic/bm80v2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM80v2", "manufacturer": "KPrepublic", - "url": "", "maintainer": "edwardslau", "usb": { "vid": "0x4B50", @@ -54,8 +53,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/kprepublic/bm80v2_iso/keyboard.json b/keyboards/kprepublic/bm80v2_iso/keyboard.json index 46ab7a5e8b..beb90a3738 100644 --- a/keyboards/kprepublic/bm80v2_iso/keyboard.json +++ b/keyboards/kprepublic/bm80v2_iso/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM80v2 ISO", "manufacturer": "KPrepublic", - "url": "", "maintainer": "edwardslau", "usb": { "vid": "0x4B50", @@ -54,8 +53,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/kprepublic/bm980hsrgb/keyboard.json b/keyboards/kprepublic/bm980hsrgb/keyboard.json index 8ee498b7b6..85f8b006ae 100644 --- a/keyboards/kprepublic/bm980hsrgb/keyboard.json +++ b/keyboards/kprepublic/bm980hsrgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BM980 Hotswap RGB", "manufacturer": "KPrepublic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B50", @@ -16,8 +15,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/kprepublic/cospad/keyboard.json b/keyboards/kprepublic/cospad/keyboard.json index 51a824b816..ac5b98c83a 100644 --- a/keyboards/kprepublic/cospad/keyboard.json +++ b/keyboards/kprepublic/cospad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Cospad", "manufacturer": "KPrepublic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B5C", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/kprepublic/cstc40/info.json b/keyboards/kprepublic/cstc40/info.json index 44d12fc22f..8e4e640b7e 100644 --- a/keyboards/kprepublic/cstc40/info.json +++ b/keyboards/kprepublic/cstc40/info.json @@ -7,15 +7,12 @@ "debounce": 2, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, "rgb_matrix": true }, "processor": "STM32F401", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0040", diff --git a/keyboards/kprepublic/jj40/rev1/keyboard.json b/keyboards/kprepublic/jj40/rev1/keyboard.json index 3ac3e2f02c..201f916ee3 100644 --- a/keyboards/kprepublic/jj40/rev1/keyboard.json +++ b/keyboards/kprepublic/jj40/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "JJ40 rev1", "manufacturer": "KPrepublic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B50", diff --git a/keyboards/kprepublic/jj4x4/keyboard.json b/keyboards/kprepublic/jj4x4/keyboard.json index 2f53db2e88..872ee1ac55 100644 --- a/keyboards/kprepublic/jj4x4/keyboard.json +++ b/keyboards/kprepublic/jj4x4/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "JJ4x4", "manufacturer": "KPrepublic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B50", @@ -12,8 +11,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/kprepublic/jj50/rev1/keyboard.json b/keyboards/kprepublic/jj50/rev1/keyboard.json index c9f191ef9c..7eed1349e0 100644 --- a/keyboards/kprepublic/jj50/rev1/keyboard.json +++ b/keyboards/kprepublic/jj50/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "JJ50 rev1", "manufacturer": "KPrepublic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B50", diff --git a/keyboards/kprepublic/jj50/rev2/keyboard.json b/keyboards/kprepublic/jj50/rev2/keyboard.json index b739c20713..4327c4be97 100644 --- a/keyboards/kprepublic/jj50/rev2/keyboard.json +++ b/keyboards/kprepublic/jj50/rev2/keyboard.json @@ -39,11 +39,9 @@ "twinkle": true }, "brightness_steps": 8, - "hue_steps": 8, "led_count": 6, "saturation_steps": 8 }, - "url": "", "usb": { "device_version": "2.0.0", "pid": "0x0050", diff --git a/keyboards/kradoindustries/kousa/keyboard.json b/keyboards/kradoindustries/kousa/keyboard.json index 196e863bf5..2730bf5d50 100644 --- a/keyboards/kradoindustries/kousa/keyboard.json +++ b/keyboards/kradoindustries/kousa/keyboard.json @@ -14,8 +14,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "encoder": true, "rgblight": true diff --git a/keyboards/kradoindustries/krado66/keyboard.json b/keyboards/kradoindustries/krado66/keyboard.json index aefadf12de..6964f3f80f 100644 --- a/keyboards/kradoindustries/krado66/keyboard.json +++ b/keyboards/kradoindustries/krado66/keyboard.json @@ -14,8 +14,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "encoder": true, "rgblight": true diff --git a/keyboards/kradoindustries/promenade/keyboard.json b/keyboards/kradoindustries/promenade/keyboard.json index 1de6ef7315..f8b1197ff1 100644 --- a/keyboards/kradoindustries/promenade/keyboard.json +++ b/keyboards/kradoindustries/promenade/keyboard.json @@ -15,8 +15,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgblight": true }, diff --git a/keyboards/kradoindustries/promenade_rp24s/keyboard.json b/keyboards/kradoindustries/promenade_rp24s/keyboard.json index c0d4a7f535..5fb3dbfec8 100644 --- a/keyboards/kradoindustries/promenade_rp24s/keyboard.json +++ b/keyboards/kradoindustries/promenade_rp24s/keyboard.json @@ -14,8 +14,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "encoder": true, "rgblight": true diff --git a/keyboards/kraken_jones/pteron56/keyboard.json b/keyboards/kraken_jones/pteron56/keyboard.json index 0af1f6b735..d298a1220f 100644 --- a/keyboards/kraken_jones/pteron56/keyboard.json +++ b/keyboards/kraken_jones/pteron56/keyboard.json @@ -18,8 +18,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true }, "layouts": { diff --git a/keyboards/ktec/daisy/keyboard.json b/keyboards/ktec/daisy/keyboard.json index d0a24f5b0d..9d8a7f2de5 100644 --- a/keyboards/ktec/daisy/keyboard.json +++ b/keyboards/ktec/daisy/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Daisy", "manufacturer": "KTEC", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B50", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/ktec/staryu/keyboard.json b/keyboards/ktec/staryu/keyboard.json index a2799703be..2fa35a7913 100644 --- a/keyboards/ktec/staryu/keyboard.json +++ b/keyboards/ktec/staryu/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Staryu", "manufacturer": "K.T.E.C.", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x1209", @@ -40,8 +39,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/kumaokobo/kudox_game/info.json b/keyboards/kumaokobo/kudox_game/info.json index 6968b5e427..8750facede 100644 --- a/keyboards/kumaokobo/kudox_game/info.json +++ b/keyboards/kumaokobo/kudox_game/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "The Kudox Game Keyboard", "manufacturer": "Kumao Kobo", - "url": "", "maintainer": "Kumao Kobo", "usb": { "vid": "0xABBA", diff --git a/keyboards/kumaokobo/kudox_game/rev1/keyboard.json b/keyboards/kumaokobo/kudox_game/rev1/keyboard.json index 975fbcd546..bd3d8053ff 100644 --- a/keyboards/kumaokobo/kudox_game/rev1/keyboard.json +++ b/keyboards/kumaokobo/kudox_game/rev1/keyboard.json @@ -30,7 +30,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/kumaokobo/kudox_game/rev2/keyboard.json b/keyboards/kumaokobo/kudox_game/rev2/keyboard.json index ac13e1b216..84f272d712 100644 --- a/keyboards/kumaokobo/kudox_game/rev2/keyboard.json +++ b/keyboards/kumaokobo/kudox_game/rev2/keyboard.json @@ -30,7 +30,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/kuro/kuro65/keyboard.json b/keyboards/kuro/kuro65/keyboard.json index 72549735d9..631120ae79 100644 --- a/keyboards/kuro/kuro65/keyboard.json +++ b/keyboards/kuro/kuro65/keyboard.json @@ -2,7 +2,6 @@ "keyboard_name": "Kuro65", "manufacturer": "Kuro", "maintainer": "0x544D", - "url": "", "processor": "atmega32u4", "bootloader": "atmel-dfu", "diode_direction": "COL2ROW", @@ -22,8 +21,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/kv/revt/keyboard.json b/keyboards/kv/revt/keyboard.json index 8553dcdd35..20d9c38fbe 100644 --- a/keyboards/kv/revt/keyboard.json +++ b/keyboards/kv/revt/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KVT", "manufacturer": "Hybrid", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x6565", diff --git a/keyboards/kwstudio/pisces/keyboard.json b/keyboards/kwstudio/pisces/keyboard.json index 48f4e6a4f6..25936beb85 100644 --- a/keyboards/kwstudio/pisces/keyboard.json +++ b/keyboards/kwstudio/pisces/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -20,7 +18,6 @@ "rows": ["B7", "D5", "D3", "D2", "D1", "D0"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/kwstudio/scorpio/keyboard.json b/keyboards/kwstudio/scorpio/keyboard.json index 82262afb1b..4d94b3a6b9 100644 --- a/keyboards/kwstudio/scorpio/keyboard.json +++ b/keyboards/kwstudio/scorpio/keyboard.json @@ -35,7 +35,6 @@ "led_count": 9, "sleep": true }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x0002", diff --git a/keyboards/kwstudio/scorpio_rev2/keyboard.json b/keyboards/kwstudio/scorpio_rev2/keyboard.json index d1b41b1d4f..b4cf901d1f 100644 --- a/keyboards/kwstudio/scorpio_rev2/keyboard.json +++ b/keyboards/kwstudio/scorpio_rev2/keyboard.json @@ -38,7 +38,6 @@ "led_count": 9, "saturation_steps": 8 }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0003", diff --git a/keyboards/kwub/bloop/keyboard.json b/keyboards/kwub/bloop/keyboard.json index 2889ef1598..a5486926b3 100644 --- a/keyboards/kwub/bloop/keyboard.json +++ b/keyboards/kwub/bloop/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/labbe/labbeminiv1/keyboard.json b/keyboards/labbe/labbeminiv1/keyboard.json index da53de3da5..e1b94dfa4e 100644 --- a/keyboards/labbe/labbeminiv1/keyboard.json +++ b/keyboards/labbe/labbeminiv1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Labbe Mini V1", "manufacturer": "Labbe", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xABBE", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false diff --git a/keyboards/labyrinth75/keyboard.json b/keyboards/labyrinth75/keyboard.json index 1e70a8318d..8e7326fa35 100644 --- a/keyboards/labyrinth75/keyboard.json +++ b/keyboards/labyrinth75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "labyrinth75", "manufacturer": "Livi", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4F53", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/laneware/lpad/keyboard.json b/keyboards/laneware/lpad/keyboard.json index 464205846b..cf1b297fd8 100644 --- a/keyboards/laneware/lpad/keyboard.json +++ b/keyboards/laneware/lpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "L-PAD", "manufacturer": "Laneware Peripherals", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4C50", @@ -12,8 +11,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/laneware/lw67/keyboard.json b/keyboards/laneware/lw67/keyboard.json index e48506f58e..6e3f09e500 100644 --- a/keyboards/laneware/lw67/keyboard.json +++ b/keyboards/laneware/lw67/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "LW-67", "manufacturer": "Laneware Peripherals", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4C50", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/laneware/lw75/keyboard.json b/keyboards/laneware/lw75/keyboard.json index 27601d1e28..a61e4396cd 100644 --- a/keyboards/laneware/lw75/keyboard.json +++ b/keyboards/laneware/lw75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "LW-75", "manufacturer": "Laneware Peripherals", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4C50", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/laneware/macro1/keyboard.json b/keyboards/laneware/macro1/keyboard.json index a432db5915..ded25130a0 100644 --- a/keyboards/laneware/macro1/keyboard.json +++ b/keyboards/laneware/macro1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MACRO-1", "manufacturer": "Laneware Peripherals", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4C50", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/laneware/raindrop/keyboard.json b/keyboards/laneware/raindrop/keyboard.json index 4e5d674b2b..115bf2fc56 100644 --- a/keyboards/laneware/raindrop/keyboard.json +++ b/keyboards/laneware/raindrop/keyboard.json @@ -19,8 +19,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true }, "qmk": { diff --git a/keyboards/large_lad/keyboard.json b/keyboards/large_lad/keyboard.json index 665a279799..e983d53939 100644 --- a/keyboards/large_lad/keyboard.json +++ b/keyboards/large_lad/keyboard.json @@ -14,8 +14,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/laser_ninja/pumpkinpad/keyboard.json b/keyboards/laser_ninja/pumpkinpad/keyboard.json index 64e62911a6..9004a411a2 100644 --- a/keyboards/laser_ninja/pumpkinpad/keyboard.json +++ b/keyboards/laser_ninja/pumpkinpad/keyboard.json @@ -1,14 +1,11 @@ { "keyboard_name": "Pumpkinpad", "manufacturer": "Laser Ninja", - "url": "", "maintainer": "Jels", "processor": "STM32F072", "bootloader": "stm32-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false, diff --git a/keyboards/latincompass/latin17rgb/keyboard.json b/keyboards/latincompass/latin17rgb/keyboard.json index 161672aea4..6dab2faf68 100644 --- a/keyboards/latincompass/latin17rgb/keyboard.json +++ b/keyboards/latincompass/latin17rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Latin17RGB", "manufacturer": "18438880", - "url": "", "maintainer": "18438880", "usb": { "vid": "0x7C88", @@ -66,8 +65,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/latincompass/latin47ble/keyboard.json b/keyboards/latincompass/latin47ble/keyboard.json index ac07f68152..f5d53dbbe8 100644 --- a/keyboards/latincompass/latin47ble/keyboard.json +++ b/keyboards/latincompass/latin47ble/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Latin47BLE", "manufacturer": "latincompass", - "url": "", "maintainer": "latincompass", "usb": { "vid": "0x6C63", diff --git a/keyboards/latincompass/latin60rgb/keyboard.json b/keyboards/latincompass/latin60rgb/keyboard.json index 764a7c882a..bc28bdf08e 100644 --- a/keyboards/latincompass/latin60rgb/keyboard.json +++ b/keyboards/latincompass/latin60rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Latin60RGB", "manufacturer": "latincompass", - "url": "", "maintainer": "latincompass", "usb": { "vid": "0x6C63", @@ -110,8 +109,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/latincompass/latin64ble/keyboard.json b/keyboards/latincompass/latin64ble/keyboard.json index b2563569d3..3a7a93c4a3 100644 --- a/keyboards/latincompass/latin64ble/keyboard.json +++ b/keyboards/latincompass/latin64ble/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Latin64BLE", "manufacturer": "latincompass", - "url": "", "maintainer": "latincompass", "usb": { "vid": "0x6C63", diff --git a/keyboards/latincompass/latin6rgb/keyboard.json b/keyboards/latincompass/latin6rgb/keyboard.json index 42aa82a030..d2708df399 100644 --- a/keyboards/latincompass/latin6rgb/keyboard.json +++ b/keyboards/latincompass/latin6rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Latin6rgb", "manufacturer": "18438880", - "url": "", "maintainer": "18438880", "usb": { "vid": "0x7C88", diff --git a/keyboards/latincompass/latinpad/keyboard.json b/keyboards/latincompass/latinpad/keyboard.json index 1e2c8ca90c..2efc370ad3 100644 --- a/keyboards/latincompass/latinpad/keyboard.json +++ b/keyboards/latincompass/latinpad/keyboard.json @@ -44,8 +44,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/latincompass/latinpadble/keyboard.json b/keyboards/latincompass/latinpadble/keyboard.json index fe35f74e79..f99fee5bad 100644 --- a/keyboards/latincompass/latinpadble/keyboard.json +++ b/keyboards/latincompass/latinpadble/keyboard.json @@ -11,8 +11,6 @@ "features": { "bluetooth": true, "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/lazydesigners/bolt/keyboard.json b/keyboards/lazydesigners/bolt/keyboard.json index c155c852df..e1254e0de5 100644 --- a/keyboards/lazydesigners/bolt/keyboard.json +++ b/keyboards/lazydesigners/bolt/keyboard.json @@ -29,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/lazydesigners/cassette8/keyboard.json b/keyboards/lazydesigners/cassette8/keyboard.json index 623b804efe..55044bd108 100755 --- a/keyboards/lazydesigners/cassette8/keyboard.json +++ b/keyboards/lazydesigners/cassette8/keyboard.json @@ -29,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/lazydesigners/dimpleplus/keyboard.json b/keyboards/lazydesigners/dimpleplus/keyboard.json index afae905c7b..474be8352c 100644 --- a/keyboards/lazydesigners/dimpleplus/keyboard.json +++ b/keyboards/lazydesigners/dimpleplus/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/lazydesigners/the30/keyboard.json b/keyboards/lazydesigners/the30/keyboard.json index 64562ada66..494105db18 100644 --- a/keyboards/lazydesigners/the30/keyboard.json +++ b/keyboards/lazydesigners/the30/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/lazydesigners/the40/keyboard.json b/keyboards/lazydesigners/the40/keyboard.json index 0e06e16ea8..dfefd92593 100644 --- a/keyboards/lazydesigners/the40/keyboard.json +++ b/keyboards/lazydesigners/the40/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/lazydesigners/the50/keyboard.json b/keyboards/lazydesigners/the50/keyboard.json index 1039625f06..de4ad88219 100644 --- a/keyboards/lazydesigners/the50/keyboard.json +++ b/keyboards/lazydesigners/the50/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/lazydesigners/the60/rev1/keyboard.json b/keyboards/lazydesigners/the60/rev1/keyboard.json index 815cf8e04d..8fd9df1559 100755 --- a/keyboards/lazydesigners/the60/rev1/keyboard.json +++ b/keyboards/lazydesigners/the60/rev1/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/lazydesigners/the60/rev2/keyboard.json b/keyboards/lazydesigners/the60/rev2/keyboard.json index f9a0fd95b5..1b2c32b737 100755 --- a/keyboards/lazydesigners/the60/rev2/keyboard.json +++ b/keyboards/lazydesigners/the60/rev2/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/leafcutterlabs/bigknob/keyboard.json b/keyboards/leafcutterlabs/bigknob/keyboard.json index 8250f7eb61..c1f3e12f03 100644 --- a/keyboards/leafcutterlabs/bigknob/keyboard.json +++ b/keyboards/leafcutterlabs/bigknob/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "bigKNOB", "manufacturer": "leafcutterlabs", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xCEEB", @@ -35,8 +34,6 @@ "bootloader": "caterina", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/leeku/finger65/keyboard.json b/keyboards/leeku/finger65/keyboard.json index c9b7338856..cba7adea66 100644 --- a/keyboards/leeku/finger65/keyboard.json +++ b/keyboards/leeku/finger65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Finger65", "manufacturer": "LeeKu", - "url": "", "maintainer": "sidcarter", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false diff --git a/keyboards/lendunistus/rpneko65/rev1/keyboard.json b/keyboards/lendunistus/rpneko65/rev1/keyboard.json index 29682cf2a7..d0bb593996 100644 --- a/keyboards/lendunistus/rpneko65/rev1/keyboard.json +++ b/keyboards/lendunistus/rpneko65/rev1/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/lendunistus/rpneko65/rev1/rev1.c b/keyboards/lendunistus/rpneko65/rev1/rev1.c index 2cb9cf07f8..a542dc6b31 100644 --- a/keyboards/lendunistus/rpneko65/rev1/rev1.c +++ b/keyboards/lendunistus/rpneko65/rev1/rev1.c @@ -16,6 +16,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #include "quantum.h" +#ifndef CAPS_LOCK_ENABLE +# define CAPS_LOCK_ENABLE true +#endif + bool led_update_kb(led_t led_state) { bool res = led_update_user(led_state); if (CAPS_LOCK_ENABLE && res) { diff --git a/keyboards/lets_split/info.json b/keyboards/lets_split/info.json index a92a948abd..9152226cab 100644 --- a/keyboards/lets_split/info.json +++ b/keyboards/lets_split/info.json @@ -1,5 +1,4 @@ { - "url": "", "maintainer": "qmk", "processor": "atmega32u4", "bootloader": "caterina", diff --git a/keyboards/lfkeyboards/lfk78/revb/keyboard.json b/keyboards/lfkeyboards/lfk78/revb/keyboard.json index a4c0d83902..d5c4656928 100644 --- a/keyboards/lfkeyboards/lfk78/revb/keyboard.json +++ b/keyboards/lfkeyboards/lfk78/revb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "LFK78 Rev B", "manufacturer": "LFKeyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4C46", diff --git a/keyboards/lfkeyboards/lfk78/revc/keyboard.json b/keyboards/lfkeyboards/lfk78/revc/keyboard.json index 56ab9b49be..0906307fe7 100644 --- a/keyboards/lfkeyboards/lfk78/revc/keyboard.json +++ b/keyboards/lfkeyboards/lfk78/revc/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "LFK7 Rev C-H", "manufacturer": "LFKeyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4C46", diff --git a/keyboards/lfkeyboards/lfk78/revj/keyboard.json b/keyboards/lfkeyboards/lfk78/revj/keyboard.json index df8ac8d0f6..2657a21b8c 100644 --- a/keyboards/lfkeyboards/lfk78/revj/keyboard.json +++ b/keyboards/lfkeyboards/lfk78/revj/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "LFK78 Rev J", "manufacturer": "LFKeyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4C46", diff --git a/keyboards/lfkeyboards/lfk87/info.json b/keyboards/lfkeyboards/lfk87/info.json index 9b10936df8..a0c0b2bcc0 100644 --- a/keyboards/lfkeyboards/lfk87/info.json +++ b/keyboards/lfkeyboards/lfk87/info.json @@ -1,13 +1,10 @@ { "keyboard_name": "LFK87", "manufacturer": "LFKeyboards", - "url": "", "maintainer": "qmk", "features": { "audio": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/lfkeyboards/lfkpad/keyboard.json b/keyboards/lfkeyboards/lfkpad/keyboard.json index 6de415b8e0..dc638cbfa9 100644 --- a/keyboards/lfkeyboards/lfkpad/keyboard.json +++ b/keyboards/lfkeyboards/lfkpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "LFKPad", "manufacturer": "LFKeyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4C46", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/lfkeyboards/mini1800/info.json b/keyboards/lfkeyboards/mini1800/info.json index 35bb1c15a8..a7ee5324b6 100644 --- a/keyboards/lfkeyboards/mini1800/info.json +++ b/keyboards/lfkeyboards/mini1800/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Mini1800", "manufacturer": "LFKeyboards", - "url": "", "maintainer": "lfkeyboards", "usb": { "vid": "0xFEED", diff --git a/keyboards/lfkeyboards/smk65/info.json b/keyboards/lfkeyboards/smk65/info.json index 0ecbf2ab95..d1ce471242 100644 --- a/keyboards/lfkeyboards/smk65/info.json +++ b/keyboards/lfkeyboards/smk65/info.json @@ -1,11 +1,9 @@ { "keyboard_name": "SMK65v2", "manufacturer": "LFKeyboards", - "url": "", "maintainer": "qmk", "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/lgbtkl/keyboard.json b/keyboards/lgbtkl/keyboard.json index a3f126e862..51411f2b2a 100644 --- a/keyboards/lgbtkl/keyboard.json +++ b/keyboards/lgbtkl/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/lily58/lite_rev3/keyboard.json b/keyboards/lily58/lite_rev3/keyboard.json index ddb1f1877e..839cf4fe78 100644 --- a/keyboards/lily58/lite_rev3/keyboard.json +++ b/keyboards/lily58/lite_rev3/keyboard.json @@ -2,7 +2,6 @@ "keyboard_name": "Lily58 Lite Rev3", "manufacturer": "Liliums", "maintainer": "yuchi", - "url": "", "processor": "RP2040", "bootloader": "rp2040", "diode_direction": "COL2ROW", diff --git a/keyboards/lily58/r2g/keyboard.json b/keyboards/lily58/r2g/keyboard.json index bb825b1d9e..6bd8f7b916 100644 --- a/keyboards/lily58/r2g/keyboard.json +++ b/keyboards/lily58/r2g/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Lily58 R2G", "manufacturer": "Mechboards UK", - "url": "", "maintainer": "Elliot Powell", "processor": "atmega32u4", "bootloader": "atmel-dfu", diff --git a/keyboards/lily58/rev1/keyboard.json b/keyboards/lily58/rev1/keyboard.json index 9ee51b8ba3..3488b0e2b5 100644 --- a/keyboards/lily58/rev1/keyboard.json +++ b/keyboards/lily58/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Lily58", "manufacturer": "liliums", - "url": "", "maintainer": "liliums", "usb": { "vid": "0x04D8", diff --git a/keyboards/linworks/dolice/keyboard.json b/keyboards/linworks/dolice/keyboard.json index 6a556db654..bcdfda561f 100644 --- a/keyboards/linworks/dolice/keyboard.json +++ b/keyboards/linworks/dolice/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/linworks/em8/keyboard.json b/keyboards/linworks/em8/keyboard.json index cf17b94a4d..12b8e8e0a9 100644 --- a/keyboards/linworks/em8/keyboard.json +++ b/keyboards/linworks/em8/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/linworks/fave104/keyboard.json b/keyboards/linworks/fave104/keyboard.json index c71fdd5661..561293c329 100644 --- a/keyboards/linworks/fave104/keyboard.json +++ b/keyboards/linworks/fave104/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "FAVE-104", "manufacturer": "Lx3", - "url": "", "maintainer": "keydler", "usb": { "vid": "0x4C58", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/linworks/fave60/keyboard.json b/keyboards/linworks/fave60/keyboard.json index 38c5458445..ab0f72c3ef 100644 --- a/keyboards/linworks/fave60/keyboard.json +++ b/keyboards/linworks/fave60/keyboard.json @@ -26,8 +26,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -43,7 +41,6 @@ "cols": ["D6", "D4", "B5", "B4", "B6", "C6", "C7", "F4", "F0", "E6", "D1", "D2", "D3", "D5", "B0"], "rows": ["F6", "F7", "D7", "F1", "D0"] }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x000D", diff --git a/keyboards/linworks/fave60a/keyboard.json b/keyboards/linworks/fave60a/keyboard.json index 7972e94bae..8a505aaae2 100644 --- a/keyboards/linworks/fave60a/keyboard.json +++ b/keyboards/linworks/fave60a/keyboard.json @@ -161,7 +161,6 @@ "max_brightness": 120, "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x000C", diff --git a/keyboards/linworks/fave65h/keyboard.json b/keyboards/linworks/fave65h/keyboard.json index 6e35f55a4b..212bd0a37b 100644 --- a/keyboards/linworks/fave65h/keyboard.json +++ b/keyboards/linworks/fave65h/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "FAve 65H", "manufacturer": "Lx3", - "url": "", "maintainer": "ToastyStoemp", "usb": { "vid": "0x4C58", diff --git a/keyboards/linworks/fave84h/keyboard.json b/keyboards/linworks/fave84h/keyboard.json index 1ca6cb911a..1b6d5516bf 100644 --- a/keyboards/linworks/fave84h/keyboard.json +++ b/keyboards/linworks/fave84h/keyboard.json @@ -7,8 +7,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -198,7 +196,6 @@ "max_brightness": 120, "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0004", diff --git a/keyboards/linworks/fave87/keyboard.json b/keyboards/linworks/fave87/keyboard.json index 9083b8c8ec..6dce6f39fe 100644 --- a/keyboards/linworks/fave87/keyboard.json +++ b/keyboards/linworks/fave87/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/linworks/fave87h/keyboard.json b/keyboards/linworks/fave87h/keyboard.json index 5fb1d4d42a..4bb6e42de4 100644 --- a/keyboards/linworks/fave87h/keyboard.json +++ b/keyboards/linworks/fave87h/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "FAve 87H", "manufacturer": "Lx3", - "url": "", "maintainer": "ToastyStoemp", "usb": { "vid": "0x4C58", diff --git a/keyboards/linworks/favepada/keyboard.json b/keyboards/linworks/favepada/keyboard.json index 2b5adcf0a6..e468f88779 100644 --- a/keyboards/linworks/favepada/keyboard.json +++ b/keyboards/linworks/favepada/keyboard.json @@ -107,7 +107,6 @@ "ws2812": { "pin": "B1" }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x000B", diff --git a/keyboards/linworks/whale75/keyboard.json b/keyboards/linworks/whale75/keyboard.json index 88598d8e8c..4298382471 100644 --- a/keyboards/linworks/whale75/keyboard.json +++ b/keyboards/linworks/whale75/keyboard.json @@ -24,8 +24,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/littlealby/mute/keyboard.json b/keyboards/littlealby/mute/keyboard.json index 96c2e26a74..3ca52491bb 100644 --- a/keyboards/littlealby/mute/keyboard.json +++ b/keyboards/littlealby/mute/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Mute", "manufacturer": "Little Alby", - "url": "", "maintainer": "albybarber", "usb": { "vid": "0x4142", @@ -19,8 +18,6 @@ "bootloader": "caterina", "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/lizard_trick/tenkey_plusplus/keyboard.json b/keyboards/lizard_trick/tenkey_plusplus/keyboard.json index 0877d99885..e3828e0674 100644 --- a/keyboards/lizard_trick/tenkey_plusplus/keyboard.json +++ b/keyboards/lizard_trick/tenkey_plusplus/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/ll3macorn/bongopad/keyboard.json b/keyboards/ll3macorn/bongopad/keyboard.json index 7a6f0ff043..a47529ed28 100644 --- a/keyboards/ll3macorn/bongopad/keyboard.json +++ b/keyboards/ll3macorn/bongopad/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/lm_keyboard/lm60n/keyboard.json b/keyboards/lm_keyboard/lm60n/keyboard.json index f12bdec031..0b901ee2ea 100644 --- a/keyboards/lm_keyboard/lm60n/keyboard.json +++ b/keyboards/lm_keyboard/lm60n/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "L+M 60N", "manufacturer": "L+M Keyboard", - "url": "", "maintainer": "gkeyboard", "usb": { "vid": "0x4C4D", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/longnald/corin/keyboard.json b/keyboards/longnald/corin/keyboard.json index a423348b78..0eb2726507 100644 --- a/keyboards/longnald/corin/keyboard.json +++ b/keyboards/longnald/corin/keyboard.json @@ -27,8 +27,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/lostdotfish/rp2040_orbweaver/keyboard.json b/keyboards/lostdotfish/rp2040_orbweaver/keyboard.json index b711d9c4a8..b1f867760a 100644 --- a/keyboards/lostdotfish/rp2040_orbweaver/keyboard.json +++ b/keyboards/lostdotfish/rp2040_orbweaver/keyboard.json @@ -14,8 +14,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/lxxt/keyboard.json b/keyboards/lxxt/keyboard.json index 3a2700883d..a4bc328a71 100644 --- a/keyboards/lxxt/keyboard.json +++ b/keyboards/lxxt/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "LXXT", "manufacturer": "DeskDaily", - "url": "", "maintainer": "DeskDaily", "usb": { "vid": "0x5003", @@ -26,10 +25,8 @@ }, "rgblight": { "led_count": 16, - "hue_steps": 8, "saturation_steps": 8, "brightness_steps": 8, - "max_brightness": 255, "sleep": true, "animations": { "alternating": true, @@ -49,8 +46,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgblight": true, "encoder": true diff --git a/keyboards/lyso1/lefishe/keyboard.json b/keyboards/lyso1/lefishe/keyboard.json index 6104f47e47..be92e9930f 100644 --- a/keyboards/lyso1/lefishe/keyboard.json +++ b/keyboards/lyso1/lefishe/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Le_Fishe", "manufacturer": "Lyso1", - "url": "", "maintainer": "Lyso1", "usb": { "vid": "0x7856", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/lz/erghost/keyboard.json b/keyboards/lz/erghost/keyboard.json index ac5ce2edf2..7722e4fc62 100644 --- a/keyboards/lz/erghost/keyboard.json +++ b/keyboards/lz/erghost/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "erGhost", "manufacturer": "Mechlovin Studio", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x6C7A", diff --git a/keyboards/m10a/keyboard.json b/keyboards/m10a/keyboard.json index 544d2535ed..d6f1be0bbb 100644 --- a/keyboards/m10a/keyboard.json +++ b/keyboards/m10a/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "M10-A", "manufacturer": "RAMA WORKS", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5241", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/machine_industries/m4_a/keyboard.json b/keyboards/machine_industries/m4_a/keyboard.json index 04510f92e1..147b85018a 100644 --- a/keyboards/machine_industries/m4_a/keyboard.json +++ b/keyboards/machine_industries/m4_a/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/machkeyboards/mach3/keyboard.json b/keyboards/machkeyboards/mach3/keyboard.json index 9f9d492bcc..126845a37d 100644 --- a/keyboards/machkeyboards/mach3/keyboard.json +++ b/keyboards/machkeyboards/mach3/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/macrocat/keyboard.json b/keyboards/macrocat/keyboard.json index 470ce8973a..d9d3be105a 100644 --- a/keyboards/macrocat/keyboard.json +++ b/keyboards/macrocat/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/madjax_macropad/keyboard.json b/keyboards/madjax_macropad/keyboard.json index ac2802faef..63c1383ac1 100644 --- a/keyboards/madjax_macropad/keyboard.json +++ b/keyboards/madjax_macropad/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/magic_force/mf34/keyboard.json b/keyboards/magic_force/mf34/keyboard.json index 7178d0405e..44d1a4ec92 100644 --- a/keyboards/magic_force/mf34/keyboard.json +++ b/keyboards/magic_force/mf34/keyboard.json @@ -1,6 +1,5 @@ { "keyboard_name": "MagicForce", - "url": "", "maintainer": "MagicForce", "manufacturer": "MagicForce", "usb": { diff --git a/keyboards/makeymakey/keyboard.json b/keyboards/makeymakey/keyboard.json index 8f04535032..4bd463fa3d 100644 --- a/keyboards/makeymakey/keyboard.json +++ b/keyboards/makeymakey/keyboard.json @@ -12,8 +12,6 @@ "bootloader": "caterina", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": true, "nkro": true diff --git a/keyboards/makrosu/keyboard.json b/keyboards/makrosu/keyboard.json index ec6b8a3bfd..e79a03f475 100644 --- a/keyboards/makrosu/keyboard.json +++ b/keyboards/makrosu/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MakrOSU", "manufacturer": "Valdydesu_", - "url": "", "maintainer": "Valdydesu_", "usb": { "vid": "0xAB69", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/malevolti/lyra/rev1/keyboard.json b/keyboards/malevolti/lyra/rev1/keyboard.json index cce0ad7bb7..6a4a993d76 100644 --- a/keyboards/malevolti/lyra/rev1/keyboard.json +++ b/keyboards/malevolti/lyra/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Lyra", "manufacturer": "Dom", - "url": "", "maintainer": "malevolti", "usb": { "vid": "0x4443", diff --git a/keyboards/malevolti/superlyra/rev1/keyboard.json b/keyboards/malevolti/superlyra/rev1/keyboard.json index 61ef7c605d..52745a94f7 100644 --- a/keyboards/malevolti/superlyra/rev1/keyboard.json +++ b/keyboards/malevolti/superlyra/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "SuperLyra", "manufacturer": "Dom", - "url": "", "maintainer": "malevolti", "usb": { "vid": "0x4443", @@ -16,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/manta60/keyboard.json b/keyboards/manta60/keyboard.json index d2f308e89c..007f015379 100644 --- a/keyboards/manta60/keyboard.json +++ b/keyboards/manta60/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": false, "mousekey": true, "nkro": false, diff --git a/keyboards/manyboard/macro/keyboard.json b/keyboards/manyboard/macro/keyboard.json index b40861414f..d0c278b781 100644 --- a/keyboards/manyboard/macro/keyboard.json +++ b/keyboards/manyboard/macro/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/maple_computing/6ball/keyboard.json b/keyboards/maple_computing/6ball/keyboard.json index 3f125c75c4..335294e51e 100644 --- a/keyboards/maple_computing/6ball/keyboard.json +++ b/keyboards/maple_computing/6ball/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "6-Ball", "manufacturer": "That-Canadian", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xCEEB", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/maple_computing/c39/keyboard.json b/keyboards/maple_computing/c39/keyboard.json index de4cbc6aeb..f2f396ccd7 100755 --- a/keyboards/maple_computing/c39/keyboard.json +++ b/keyboards/maple_computing/c39/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "C39", "manufacturer": "Maple Computing", - "url": "", "maintainer": "Space Cat", "usb": { "vid": "0xCA17", diff --git a/keyboards/maple_computing/christmas_tree/v2017/keyboard.json b/keyboards/maple_computing/christmas_tree/v2017/keyboard.json index 604b1b382a..d2ebc781d6 100644 --- a/keyboards/maple_computing/christmas_tree/v2017/keyboard.json +++ b/keyboards/maple_computing/christmas_tree/v2017/keyboard.json @@ -13,7 +13,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/maple_computing/ivy/rev1/keyboard.json b/keyboards/maple_computing/ivy/rev1/keyboard.json index aac35a5dcc..e5bc6beae7 100644 --- a/keyboards/maple_computing/ivy/rev1/keyboard.json +++ b/keyboards/maple_computing/ivy/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ivy", "manufacturer": "Maple Computing", - "url": "", "maintainer": "That-Canadian", "usb": { "vid": "0x1337", diff --git a/keyboards/maple_computing/jnao/keyboard.json b/keyboards/maple_computing/jnao/keyboard.json index 97b51a7680..012d51f8f5 100644 --- a/keyboards/maple_computing/jnao/keyboard.json +++ b/keyboards/maple_computing/jnao/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "JNAO", "manufacturer": "Maple Computing", - "url": "", "maintainer": "That-Canadian", "usb": { "vid": "0x1337", diff --git a/keyboards/maple_computing/launchpad/rev1/keyboard.json b/keyboards/maple_computing/launchpad/rev1/keyboard.json index 8c75561179..272a2eef6d 100644 --- a/keyboards/maple_computing/launchpad/rev1/keyboard.json +++ b/keyboards/maple_computing/launchpad/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Launch Pad", "manufacturer": "Maple Computing", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x1337", diff --git a/keyboards/maple_computing/lets_split_eh/keyboard.json b/keyboards/maple_computing/lets_split_eh/keyboard.json index 42a1cf3e77..90965090b1 100644 --- a/keyboards/maple_computing/lets_split_eh/keyboard.json +++ b/keyboards/maple_computing/lets_split_eh/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Lets Split Eh?", "manufacturer": "That-Canadian", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/maple_computing/minidox/rev1/keyboard.json b/keyboards/maple_computing/minidox/rev1/keyboard.json index b64f26e834..340a8bd39e 100644 --- a/keyboards/maple_computing/minidox/rev1/keyboard.json +++ b/keyboards/maple_computing/minidox/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MiniDox", "manufacturer": "That-Canadian", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/maple_computing/the_ruler/keyboard.json b/keyboards/maple_computing/the_ruler/keyboard.json index 7d15bb9bb8..3cca7e577a 100644 --- a/keyboards/maple_computing/the_ruler/keyboard.json +++ b/keyboards/maple_computing/the_ruler/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "The Ruler", "manufacturer": "Maple Computing", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x1337", @@ -30,7 +29,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/marcopad/keyboard.json b/keyboards/marcopad/keyboard.json index c0a8ca37c0..50dc3c1ed0 100644 --- a/keyboards/marcopad/keyboard.json +++ b/keyboards/marcopad/keyboard.json @@ -34,8 +34,7 @@ "animation": "splash", "hue": 132, "sat": 102, - "speed": 80, - "val": 255 + "speed": 80 }, "driver": "ws2812", "layout": [ diff --git a/keyboards/mariorion_v25/prod/keyboard.json b/keyboards/mariorion_v25/prod/keyboard.json index dd014be03a..4ffccca63e 100644 --- a/keyboards/mariorion_v25/prod/keyboard.json +++ b/keyboards/mariorion_v25/prod/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -44,7 +42,6 @@ "rows": ["B5", "B4", "B3", "A2", "C13", "B8"] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0002", diff --git a/keyboards/mariorion_v25/proto/keyboard.json b/keyboards/mariorion_v25/proto/keyboard.json index be00d447d2..404b845c00 100644 --- a/keyboards/mariorion_v25/proto/keyboard.json +++ b/keyboards/mariorion_v25/proto/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -44,7 +42,6 @@ "rows": ["B5", "B4", "B3", "A2", "C13", "B8"] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/marksard/leftover30/keyboard.json b/keyboards/marksard/leftover30/keyboard.json index ae2250a5f2..1b1131d6fc 100644 --- a/keyboards/marksard/leftover30/keyboard.json +++ b/keyboards/marksard/leftover30/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/marksard/treadstone32/info.json b/keyboards/marksard/treadstone32/info.json index d93277472c..2de31ac08d 100644 --- a/keyboards/marksard/treadstone32/info.json +++ b/keyboards/marksard/treadstone32/info.json @@ -4,8 +4,6 @@ "maintainer": "marksard", "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "mousekey": true, "nkro": false diff --git a/keyboards/matchstickworks/normiepad/keyboard.json b/keyboards/matchstickworks/normiepad/keyboard.json index 3063b820aa..4e6a8cdb13 100644 --- a/keyboards/matchstickworks/normiepad/keyboard.json +++ b/keyboards/matchstickworks/normiepad/keyboard.json @@ -4,8 +4,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/matchstickworks/southpad/rev1/keyboard.json b/keyboards/matchstickworks/southpad/rev1/keyboard.json index 15db9823b1..e7c3237a55 100644 --- a/keyboards/matchstickworks/southpad/rev1/keyboard.json +++ b/keyboards/matchstickworks/southpad/rev1/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/matchstickworks/southpad/rev2/keyboard.json b/keyboards/matchstickworks/southpad/rev2/keyboard.json index 717b56ef63..e546b66bb9 100644 --- a/keyboards/matchstickworks/southpad/rev2/keyboard.json +++ b/keyboards/matchstickworks/southpad/rev2/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/matrix/abelx/keyboard.json b/keyboards/matrix/abelx/keyboard.json index 7fcad281da..19f7d23b61 100644 --- a/keyboards/matrix/abelx/keyboard.json +++ b/keyboards/matrix/abelx/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ABELX", "manufacturer": "Matrix", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4D58", diff --git a/keyboards/matrix/cain_re/keyboard.json b/keyboards/matrix/cain_re/keyboard.json index 7d93e806c2..2217a001a3 100644 --- a/keyboards/matrix/cain_re/keyboard.json +++ b/keyboards/matrix/cain_re/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Cain", "manufacturer": "Matrix", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4D58", @@ -37,8 +36,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/matrix/falcon/config.h b/keyboards/matrix/falcon/config.h index 9065dd0770..66787658fd 100644 --- a/keyboards/matrix/falcon/config.h +++ b/keyboards/matrix/falcon/config.h @@ -29,4 +29,3 @@ //pin setting #define LED_POWER_PIN D5 #define CHG_EN_PIN E6 -#define BATTERY_LEVEL_PIN F0 diff --git a/keyboards/matrix/falcon/keyboard.json b/keyboards/matrix/falcon/keyboard.json index 0c387f5bc2..1a65d86974 100644 --- a/keyboards/matrix/falcon/keyboard.json +++ b/keyboards/matrix/falcon/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Falcon", "manufacturer": "Matrix Lab", - "url": "", "maintainer": "yulei (Astro)", "usb": { "vid": "0x4D58", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/matrix/m12og/rev1/keyboard.json b/keyboards/matrix/m12og/rev1/keyboard.json index c956720a8d..7d1fccdad6 100644 --- a/keyboards/matrix/m12og/rev1/keyboard.json +++ b/keyboards/matrix/m12og/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "m12og_v1", "manufacturer": "Matrix", - "url": "", "maintainer": "kb-elmo", "usb": { "vid": "0x4D58", diff --git a/keyboards/matrix/m12og/rev2/keyboard.json b/keyboards/matrix/m12og/rev2/keyboard.json index 45fcffe9eb..038aea0984 100644 --- a/keyboards/matrix/m12og/rev2/keyboard.json +++ b/keyboards/matrix/m12og/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "M12OG", "manufacturer": "Matrix", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4D58", @@ -37,8 +36,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/matrix/m20add/keyboard.json b/keyboards/matrix/m20add/keyboard.json index fc58d242e6..31cc936b9c 100644 --- a/keyboards/matrix/m20add/keyboard.json +++ b/keyboards/matrix/m20add/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "8XV2.0 Additional", "manufacturer": "Matrix", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4D58", diff --git a/keyboards/matrix/me/keyboard.json b/keyboards/matrix/me/keyboard.json index 8349fbd7e6..bd2ecde4a4 100644 --- a/keyboards/matrix/me/keyboard.json +++ b/keyboards/matrix/me/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Matrix ME", "manufacturer": "Matrix Lab", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4D58", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/matrix/noah/keyboard.json b/keyboards/matrix/noah/keyboard.json index 53c8dc2458..d9d4ce3976 100644 --- a/keyboards/matrix/noah/keyboard.json +++ b/keyboards/matrix/noah/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NOAH", "manufacturer": "Matrix", - "url": "", "maintainer": "astro", "usb": { "vid": "0x4D58", diff --git a/keyboards/matthewdias/m3n3van/keyboard.json b/keyboards/matthewdias/m3n3van/keyboard.json index 3fdfb7f61d..c5b26b3e9d 100644 --- a/keyboards/matthewdias/m3n3van/keyboard.json +++ b/keyboards/matthewdias/m3n3van/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/matthewdias/minim/keyboard.json b/keyboards/matthewdias/minim/keyboard.json index b9ff70ca40..8735545ba7 100644 --- a/keyboards/matthewdias/minim/keyboard.json +++ b/keyboards/matthewdias/minim/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/matthewdias/model_v/keyboard.json b/keyboards/matthewdias/model_v/keyboard.json index 00d4c4c0eb..5bcda4e887 100644 --- a/keyboards/matthewdias/model_v/keyboard.json +++ b/keyboards/matthewdias/model_v/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/matthewdias/txuu/keyboard.json b/keyboards/matthewdias/txuu/keyboard.json index b4c1597e5f..035eca2490 100644 --- a/keyboards/matthewdias/txuu/keyboard.json +++ b/keyboards/matthewdias/txuu/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/maxipad/info.json b/keyboards/maxipad/info.json index bf054e4b83..b058bf15d0 100644 --- a/keyboards/maxipad/info.json +++ b/keyboards/maxipad/info.json @@ -1,12 +1,9 @@ { "keyboard_name": "maxipad", "manufacturer": "wootpatoot", - "url": "", "maintainer": "qmk", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/maxr1998/pulse4k/keyboard.json b/keyboards/maxr1998/pulse4k/keyboard.json index 22d1d67a51..a2bdcb5068 100644 --- a/keyboards/maxr1998/pulse4k/keyboard.json +++ b/keyboards/maxr1998/pulse4k/keyboard.json @@ -28,7 +28,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "encoder": true, "extrakey": true, diff --git a/keyboards/mazestudio/jocker/keyboard.json b/keyboards/mazestudio/jocker/keyboard.json index 7257866f21..55e0a7de66 100644 --- a/keyboards/mazestudio/jocker/keyboard.json +++ b/keyboards/mazestudio/jocker/keyboard.json @@ -4,7 +4,6 @@ "maintainer": "mazestd", "bootloader": "atmel-dfu", "processor": "atmega32u4", - "url": "", "usb": { "vid": "0x70F5", "pid": "0x4A01", @@ -12,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/mb44/keyboard.json b/keyboards/mb44/keyboard.json index c349d11d38..5c2eeb6666 100644 --- a/keyboards/mb44/keyboard.json +++ b/keyboards/mb44/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MB-44", "manufacturer": "melonbred", - "url": "", "maintainer": "melonbred", "usb": { "vid": "0x6D62", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/mc_76k/keyboard.json b/keyboards/mc_76k/keyboard.json index 18aef48d01..d277ec95d5 100644 --- a/keyboards/mc_76k/keyboard.json +++ b/keyboards/mc_76k/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/mechanickeys/miniashen40/keyboard.json b/keyboards/mechanickeys/miniashen40/keyboard.json index 2adee31c1d..36eb0a4300 100644 --- a/keyboards/mechanickeys/miniashen40/keyboard.json +++ b/keyboards/mechanickeys/miniashen40/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Mini Ashen 40", "manufacturer": "MechanicKeys", - "url": "", "maintainer": "jfescobar18", "usb": { "vid": "0x4D4B", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/mechanickeys/undead60m/keyboard.json b/keyboards/mechanickeys/undead60m/keyboard.json index 7dc27c29ed..5b5f5ca167 100644 --- a/keyboards/mechanickeys/undead60m/keyboard.json +++ b/keyboards/mechanickeys/undead60m/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Undead 60-M", "manufacturer": "MechanicKeys", - "url": "", "maintainer": "jfescobar18", "usb": { "vid": "0x4D4B", @@ -32,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/mechboards/crkbd/pro/keyboard.json b/keyboards/mechboards/crkbd/pro/keyboard.json index 05bca63993..69a04760de 100644 --- a/keyboards/mechboards/crkbd/pro/keyboard.json +++ b/keyboards/mechboards/crkbd/pro/keyboard.json @@ -30,9 +30,6 @@ "animations": { "cycle_left_right": true }, - "default": { - "animation": "cycle_left_right" - }, "driver": "ws2812", "layout": [ {"x": 85, "y": 16, "flags": 2}, diff --git a/keyboards/mechboards/lily58/pro/keyboard.json b/keyboards/mechboards/lily58/pro/keyboard.json index d655377f19..ca620c67d8 100644 --- a/keyboards/mechboards/lily58/pro/keyboard.json +++ b/keyboards/mechboards/lily58/pro/keyboard.json @@ -30,9 +30,6 @@ "animations": { "cycle_left_right": true }, - "default": { - "animation": "cycle_left_right" - }, "driver": "ws2812", "layout": [ {"matrix": [0, 5], "x": 72, "y": 4, "flags": 4}, diff --git a/keyboards/mechboards/sofle/pro/keyboard.json b/keyboards/mechboards/sofle/pro/keyboard.json index dbc339d9a1..e1da038644 100644 --- a/keyboards/mechboards/sofle/pro/keyboard.json +++ b/keyboards/mechboards/sofle/pro/keyboard.json @@ -30,9 +30,6 @@ "animations": { "cycle_left_right": true }, - "default": { - "animation": "cycle_left_right" - }, "driver": "ws2812", "layout": [ {"matrix": [4, 0], "x": 32, "y": 57, "flags": 4}, diff --git a/keyboards/mechbrewery/mb65h/keyboard.json b/keyboards/mechbrewery/mb65h/keyboard.json index 8b4049be4d..c49abe946a 100644 --- a/keyboards/mechbrewery/mb65h/keyboard.json +++ b/keyboards/mechbrewery/mb65h/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MB65H", "manufacturer": "MechBrewery", - "url": "", "maintainer": "AnthonyNguyen168", "usb": { "vid": "0x4252", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/mechbrewery/mb65s/keyboard.json b/keyboards/mechbrewery/mb65s/keyboard.json index e043d95860..17472eeecf 100644 --- a/keyboards/mechbrewery/mb65s/keyboard.json +++ b/keyboards/mechbrewery/mb65s/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MB65S", "manufacturer": "MechBrewery", - "url": "", "maintainer": "AnthonyNguyen168", "usb": { "vid": "0x4252", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/mechkeys/acr60/keyboard.json b/keyboards/mechkeys/acr60/keyboard.json index 6486b21f12..a3eed2d74e 100644 --- a/keyboards/mechkeys/acr60/keyboard.json +++ b/keyboards/mechkeys/acr60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ACR60", "manufacturer": "MechKeys", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/mechkeys/alu84/keyboard.json b/keyboards/mechkeys/alu84/keyboard.json index 30f70b17c9..3d3355a3ee 100644 --- a/keyboards/mechkeys/alu84/keyboard.json +++ b/keyboards/mechkeys/alu84/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ALU84", "manufacturer": "MechKeys", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/mechkeys/espectro/keyboard.json b/keyboards/mechkeys/espectro/keyboard.json index f4d2aa29bb..d9c292d5e5 100644 --- a/keyboards/mechkeys/espectro/keyboard.json +++ b/keyboards/mechkeys/espectro/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Espectro", "manufacturer": "MechKeys", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/mechkeys/mechmini/v1/keyboard.json b/keyboards/mechkeys/mechmini/v1/keyboard.json index 8d3a4a9b84..a1338c9ba9 100644 --- a/keyboards/mechkeys/mechmini/v1/keyboard.json +++ b/keyboards/mechkeys/mechmini/v1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MechMini", "manufacturer": "MechKeys", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/mechkeys/mk60/keyboard.json b/keyboards/mechkeys/mk60/keyboard.json index e47d7def2c..70c8bec2c6 100644 --- a/keyboards/mechkeys/mk60/keyboard.json +++ b/keyboards/mechkeys/mk60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MK60", "manufacturer": "MechKeys", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/mechllama/g35/info.json b/keyboards/mechllama/g35/info.json index 2fa3871405..fab11db131 100644 --- a/keyboards/mechllama/g35/info.json +++ b/keyboards/mechllama/g35/info.json @@ -5,8 +5,6 @@ "maintainer": "kaylynb", "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": true, diff --git a/keyboards/mechlovin/adelais/info.json b/keyboards/mechlovin/adelais/info.json index 42b16d6398..84ca6403ce 100644 --- a/keyboards/mechlovin/adelais/info.json +++ b/keyboards/mechlovin/adelais/info.json @@ -1,6 +1,5 @@ { "manufacturer": "Team.Mechlovin", - "url": "", "maintainer": "mechlovin", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/adelais/rgb_led/rev3/keyboard.json b/keyboards/mechlovin/adelais/rgb_led/rev3/keyboard.json index 628eb404a5..a7cd8faa78 100644 --- a/keyboards/mechlovin/adelais/rgb_led/rev3/keyboard.json +++ b/keyboards/mechlovin/adelais/rgb_led/rev3/keyboard.json @@ -7,8 +7,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgblight": true, "rgb_matrix": true, diff --git a/keyboards/mechlovin/adelais/standard_led/avr/rev1/keyboard.json b/keyboards/mechlovin/adelais/standard_led/avr/rev1/keyboard.json index 3758a8f085..99a31763b9 100644 --- a/keyboards/mechlovin/adelais/standard_led/avr/rev1/keyboard.json +++ b/keyboards/mechlovin/adelais/standard_led/avr/rev1/keyboard.json @@ -7,8 +7,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "backlight": true, "rgblight": true diff --git a/keyboards/mechlovin/delphine/info.json b/keyboards/mechlovin/delphine/info.json index baeeab6f18..2fe90c7629 100644 --- a/keyboards/mechlovin/delphine/info.json +++ b/keyboards/mechlovin/delphine/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Delphine", "manufacturer": "Mechlovin", - "url": "", "maintainer": "mechlovin", "usb": { "vid": "0x4D4C" diff --git a/keyboards/mechlovin/foundation/keyboard.json b/keyboards/mechlovin/foundation/keyboard.json index 3bd05add2f..00cf464255 100644 --- a/keyboards/mechlovin/foundation/keyboard.json +++ b/keyboards/mechlovin/foundation/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Foundation FRL", "manufacturer": "Mechlovin Studio", - "url": "", "maintainer": "Protozoa", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/hannah60rgb/rev1/keyboard.json b/keyboards/mechlovin/hannah60rgb/rev1/keyboard.json index 4fb4dc2eef..e2b0ae715e 100644 --- a/keyboards/mechlovin/hannah60rgb/rev1/keyboard.json +++ b/keyboards/mechlovin/hannah60rgb/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Hannah60 RGB", "manufacturer": "Team.Mechlovin", - "url": "", "maintainer": "mechlovin", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/hannah60rgb/rev2/keyboard.json b/keyboards/mechlovin/hannah60rgb/rev2/keyboard.json index 06bb71a348..066422b3e3 100644 --- a/keyboards/mechlovin/hannah60rgb/rev2/keyboard.json +++ b/keyboards/mechlovin/hannah60rgb/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Hannah60 RGB Rev.2", "manufacturer": "Team.Mechlovin", - "url": "", "maintainer": "mechlovin", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/hannah65/rev1/haus/keyboard.json b/keyboards/mechlovin/hannah65/rev1/haus/keyboard.json index 7a935fc1a5..14ca49f207 100644 --- a/keyboards/mechlovin/hannah65/rev1/haus/keyboard.json +++ b/keyboards/mechlovin/hannah65/rev1/haus/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Haus Rev. 1", "manufacturer": "Team Mechlovin", - "url": "", "maintainer": "Team Mechlovin", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/hannah910/rev1/keyboard.json b/keyboards/mechlovin/hannah910/rev1/keyboard.json index 61cf365337..44dedd57c3 100644 --- a/keyboards/mechlovin/hannah910/rev1/keyboard.json +++ b/keyboards/mechlovin/hannah910/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Hannah910", "manufacturer": "Mechlovin", - "url": "", "maintainer": "Mechlovin'", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/hannah910/rev2/keyboard.json b/keyboards/mechlovin/hannah910/rev2/keyboard.json index 9fb5847124..8a01f6bb8b 100644 --- a/keyboards/mechlovin/hannah910/rev2/keyboard.json +++ b/keyboards/mechlovin/hannah910/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Hannah910", "manufacturer": "Mechlovin", - "url": "", "maintainer": "Team Mechlovin'", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/hannah910/rev3/keyboard.json b/keyboards/mechlovin/hannah910/rev3/keyboard.json index ba88319890..668b31328f 100644 --- a/keyboards/mechlovin/hannah910/rev3/keyboard.json +++ b/keyboards/mechlovin/hannah910/rev3/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Hannah910", "manufacturer": "Mechlovin", - "url": "", "maintainer": "Team Mechlovin'", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/hex4b/info.json b/keyboards/mechlovin/hex4b/info.json index 9964736255..de7f03bab9 100644 --- a/keyboards/mechlovin/hex4b/info.json +++ b/keyboards/mechlovin/hex4b/info.json @@ -1,6 +1,5 @@ { "manufacturer": "Mechlovin Studio", - "url": "", "maintainer": "Hex-Keyboard&Mechlovin", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/hex6c/keyboard.json b/keyboards/mechlovin/hex6c/keyboard.json index e068420b81..c951cf242d 100644 --- a/keyboards/mechlovin/hex6c/keyboard.json +++ b/keyboards/mechlovin/hex6c/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Hex6C", "manufacturer": "Mechlovin Studio and Hex Keyboard", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/infinity87/rev1/rogue87/keyboard.json b/keyboards/mechlovin/infinity87/rev1/rogue87/keyboard.json index 2ac0510dbf..840f8a0392 100644 --- a/keyboards/mechlovin/infinity87/rev1/rogue87/keyboard.json +++ b/keyboards/mechlovin/infinity87/rev1/rogue87/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Rogue87 Rev.1", "manufacturer": "Mechlovin.Studio", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/infinity87/rev1/rouge87/keyboard.json b/keyboards/mechlovin/infinity87/rev1/rouge87/keyboard.json index 6b947f0f1f..1eec53ebb9 100644 --- a/keyboards/mechlovin/infinity87/rev1/rouge87/keyboard.json +++ b/keyboards/mechlovin/infinity87/rev1/rouge87/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Rouge87 Rev.1", "manufacturer": "Mechlovin.Studio", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/infinity87/rev1/standard/keyboard.json b/keyboards/mechlovin/infinity87/rev1/standard/keyboard.json index a0cb10fac2..941f6ec955 100644 --- a/keyboards/mechlovin/infinity87/rev1/standard/keyboard.json +++ b/keyboards/mechlovin/infinity87/rev1/standard/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "infinity87 Rev.1", "manufacturer": "Mechlovin.Studio", - "url": "", "maintainer": "Team Mechlovin'", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/infinity87/rev2/keyboard.json b/keyboards/mechlovin/infinity87/rev2/keyboard.json index fdc6686988..618b9397bf 100644 --- a/keyboards/mechlovin/infinity87/rev2/keyboard.json +++ b/keyboards/mechlovin/infinity87/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Infinity87 Rev.2", "manufacturer": "Mechlovin.Studio", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/infinity87/rgb_rev1/keyboard.json b/keyboards/mechlovin/infinity87/rgb_rev1/keyboard.json index 2d177949dc..2ca5e03b36 100644 --- a/keyboards/mechlovin/infinity87/rgb_rev1/keyboard.json +++ b/keyboards/mechlovin/infinity87/rgb_rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Infinity87 RGB Rev1", "manufacturer": "Mechlovin.Studio", - "url": "", "maintainer": "Team Mechlovin'", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/infinity875/keyboard.json b/keyboards/mechlovin/infinity875/keyboard.json index 73bdb0af13..1016178caa 100644 --- a/keyboards/mechlovin/infinity875/keyboard.json +++ b/keyboards/mechlovin/infinity875/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Infinity87.5", "manufacturer": "Mechlovin.Studio", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/infinity88/keyboard.json b/keyboards/mechlovin/infinity88/keyboard.json index 14371d2459..3691c6d836 100644 --- a/keyboards/mechlovin/infinity88/keyboard.json +++ b/keyboards/mechlovin/infinity88/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Infinity 88", "manufacturer": "Team.Mechlovin", - "url": "", "maintainer": "mechlovin", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/infinityce/keyboard.json b/keyboards/mechlovin/infinityce/keyboard.json index 5b10e056ba..ea62853ef4 100644 --- a/keyboards/mechlovin/infinityce/keyboard.json +++ b/keyboards/mechlovin/infinityce/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Infinity CE", "manufacturer": "Team.Mechlovin", - "url": "", "maintainer": "Team Mechlovin'", "usb": { "vid": "0x4D4C", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/mechlovin/jay60/keyboard.json b/keyboards/mechlovin/jay60/keyboard.json index 75bf190d88..2b7e9ef914 100644 --- a/keyboards/mechlovin/jay60/keyboard.json +++ b/keyboards/mechlovin/jay60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Jay60", "manufacturer": "Mechlovin Studio", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/kanu/keyboard.json b/keyboards/mechlovin/kanu/keyboard.json index 10cd22319a..a6b6588cc8 100644 --- a/keyboards/mechlovin/kanu/keyboard.json +++ b/keyboards/mechlovin/kanu/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Kanu", "manufacturer": "Mechlovin", - "url": "", "maintainer": "Team Mechlovin'", "usb": { "vid": "0x4D4C", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/mechlovin/kay60/keyboard.json b/keyboards/mechlovin/kay60/keyboard.json index 7c38273947..e7b26f4560 100644 --- a/keyboards/mechlovin/kay60/keyboard.json +++ b/keyboards/mechlovin/kay60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Kay60", "manufacturer": "Mechlovin Studio", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x4D4C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/mechlovin/kay65/keyboard.json b/keyboards/mechlovin/kay65/keyboard.json index f5d5897939..5ec1d34591 100644 --- a/keyboards/mechlovin/kay65/keyboard.json +++ b/keyboards/mechlovin/kay65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Kay65 Rev. 1", "manufacturer": "Team Mechlovin", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x4D4C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/mechlovin/mechlovin9/info.json b/keyboards/mechlovin/mechlovin9/info.json index 41133813ef..6783f0a323 100644 --- a/keyboards/mechlovin/mechlovin9/info.json +++ b/keyboards/mechlovin/mechlovin9/info.json @@ -1,6 +1,5 @@ { "manufacturer": "Mechlovin Studio", - "url": "", "maintainer": "Team Mechlovin", "usb": { "vid": "0x4D4C" diff --git a/keyboards/mechlovin/olly/bb/keyboard.json b/keyboards/mechlovin/olly/bb/keyboard.json index ac08e94c3c..de3eb16c1d 100644 --- a/keyboards/mechlovin/olly/bb/keyboard.json +++ b/keyboards/mechlovin/olly/bb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Olly BB", "manufacturer": "Mechlovin.Studio", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/olly/jf/info.json b/keyboards/mechlovin/olly/jf/info.json index 315191e840..c5a70f44ba 100644 --- a/keyboards/mechlovin/olly/jf/info.json +++ b/keyboards/mechlovin/olly/jf/info.json @@ -1,6 +1,5 @@ { "manufacturer": "Mechlovin.Studio", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x4D4C" diff --git a/keyboards/mechlovin/olly/octagon/keyboard.json b/keyboards/mechlovin/olly/octagon/keyboard.json index 4bc7d88ed7..6df26bad09 100644 --- a/keyboards/mechlovin/olly/octagon/keyboard.json +++ b/keyboards/mechlovin/olly/octagon/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Olly Octagon", "manufacturer": "Mechlovin Studio", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x4D4C", @@ -170,11 +169,12 @@ "processor": "STM32F103", "bootloader": "stm32duino", "layout_aliases": { - "LAYOUT": "LAYOUT_split_bs", - "LAYOUT_all": "LAYOUT_split_bs" + "LAYOUT": "LAYOUT_all", + "LAYOUT_split_bs": "LAYOUT_all" }, + "community_layouts": ["75_ansi", "75_iso"], "layouts": { - "LAYOUT_split_bs": { + "LAYOUT_all": { "layout": [ {"matrix": [0, 0], "x": 0, "y": 0}, {"matrix": [0, 1], "x": 1, "y": 0}, @@ -269,6 +269,750 @@ {"matrix": [5, 14], "x": 14, "y": 5}, {"matrix": [5, 15], "x": 15, "y": 5} ] + }, + "LAYOUT_75_ansi": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 10], "x": 10, "y": 0}, + {"matrix": [0, 11], "x": 11, "y": 0}, + {"matrix": [0, 12], "x": 12, "y": 0}, + {"matrix": [0, 13], "x": 13, "y": 0}, + {"matrix": [0, 14], "x": 14, "y": 0}, + {"matrix": [0, 15], "x": 15, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1}, + {"matrix": [1, 5], "x": 5, "y": 1}, + {"matrix": [1, 6], "x": 6, "y": 1}, + {"matrix": [1, 7], "x": 7, "y": 1}, + {"matrix": [1, 8], "x": 8, "y": 1}, + {"matrix": [1, 9], "x": 9, "y": 1}, + {"matrix": [1, 10], "x": 10, "y": 1}, + {"matrix": [1, 11], "x": 11, "y": 1}, + {"matrix": [1, 12], "x": 12, "y": 1}, + {"matrix": [1, 13], "x": 13, "y": 1, "w": 2}, + {"matrix": [1, 15], "x": 15, "y": 1}, + + {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5}, + {"matrix": [2, 1], "x": 1.5, "y": 2}, + {"matrix": [2, 2], "x": 2.5, "y": 2}, + {"matrix": [2, 3], "x": 3.5, "y": 2}, + {"matrix": [2, 4], "x": 4.5, "y": 2}, + {"matrix": [2, 5], "x": 5.5, "y": 2}, + {"matrix": [2, 6], "x": 6.5, "y": 2}, + {"matrix": [2, 7], "x": 7.5, "y": 2}, + {"matrix": [2, 8], "x": 8.5, "y": 2}, + {"matrix": [2, 9], "x": 9.5, "y": 2}, + {"matrix": [2, 10], "x": 10.5, "y": 2}, + {"matrix": [2, 11], "x": 11.5, "y": 2}, + {"matrix": [2, 12], "x": 12.5, "y": 2}, + {"matrix": [2, 14], "x": 13.5, "y": 2, "w": 1.5}, + {"matrix": [2, 15], "x": 15, "y": 2}, + + {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75}, + {"matrix": [3, 1], "x": 1.75, "y": 3}, + {"matrix": [3, 2], "x": 2.75, "y": 3}, + {"matrix": [3, 3], "x": 3.75, "y": 3}, + {"matrix": [3, 4], "x": 4.75, "y": 3}, + {"matrix": [3, 5], "x": 5.75, "y": 3}, + {"matrix": [3, 6], "x": 6.75, "y": 3}, + {"matrix": [3, 7], "x": 7.75, "y": 3}, + {"matrix": [3, 8], "x": 8.75, "y": 3}, + {"matrix": [3, 9], "x": 9.75, "y": 3}, + {"matrix": [3, 10], "x": 10.75, "y": 3}, + {"matrix": [3, 11], "x": 11.75, "y": 3}, + {"matrix": [3, 13], "x": 12.75, "y": 3, "w": 2.25}, + {"matrix": [3, 15], "x": 15, "y": 3}, + + {"matrix": [4, 0], "x": 0, "y": 4, "w": 2.25}, + {"matrix": [4, 2], "x": 2.25, "y": 4}, + {"matrix": [4, 3], "x": 3.25, "y": 4}, + {"matrix": [4, 4], "x": 4.25, "y": 4}, + {"matrix": [4, 5], "x": 5.25, "y": 4}, + {"matrix": [4, 6], "x": 6.25, "y": 4}, + {"matrix": [4, 7], "x": 7.25, "y": 4}, + {"matrix": [4, 8], "x": 8.25, "y": 4}, + {"matrix": [4, 9], "x": 9.25, "y": 4}, + {"matrix": [4, 10], "x": 10.25, "y": 4}, + {"matrix": [4, 11], "x": 11.25, "y": 4}, + {"matrix": [4, 12], "x": 12.25, "y": 4, "w": 1.75}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4}, + + {"matrix": [5, 0], "x": 0, "y": 5, "w": 1.25}, + {"matrix": [5, 1], "x": 1.25, "y": 5, "w": 1.25}, + {"matrix": [5, 2], "x": 2.5, "y": 5, "w": 1.25}, + {"matrix": [5, 6], "x": 3.75, "y": 5, "w": 6.25}, + {"matrix": [5, 10], "x": 10, "y": 5}, + {"matrix": [5, 11], "x": 11, "y": 5}, + {"matrix": [5, 12], "x": 12, "y": 5}, + {"matrix": [5, 13], "x": 13, "y": 5}, + {"matrix": [5, 14], "x": 14, "y": 5}, + {"matrix": [5, 15], "x": 15, "y": 5} + ] + }, + "LAYOUT_75_ansi_split_bs": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 10], "x": 10, "y": 0}, + {"matrix": [0, 11], "x": 11, "y": 0}, + {"matrix": [0, 12], "x": 12, "y": 0}, + {"matrix": [0, 13], "x": 13, "y": 0}, + {"matrix": [0, 14], "x": 14, "y": 0}, + {"matrix": [0, 15], "x": 15, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1}, + {"matrix": [1, 5], "x": 5, "y": 1}, + {"matrix": [1, 6], "x": 6, "y": 1}, + {"matrix": [1, 7], "x": 7, "y": 1}, + {"matrix": [1, 8], "x": 8, "y": 1}, + {"matrix": [1, 9], "x": 9, "y": 1}, + {"matrix": [1, 10], "x": 10, "y": 1}, + {"matrix": [1, 11], "x": 11, "y": 1}, + {"matrix": [1, 12], "x": 12, "y": 1}, + {"matrix": [1, 13], "x": 13, "y": 1}, + {"matrix": [1, 14], "x": 14, "y": 1}, + {"matrix": [1, 15], "x": 15, "y": 1}, + + {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5}, + {"matrix": [2, 1], "x": 1.5, "y": 2}, + {"matrix": [2, 2], "x": 2.5, "y": 2}, + {"matrix": [2, 3], "x": 3.5, "y": 2}, + {"matrix": [2, 4], "x": 4.5, "y": 2}, + {"matrix": [2, 5], "x": 5.5, "y": 2}, + {"matrix": [2, 6], "x": 6.5, "y": 2}, + {"matrix": [2, 7], "x": 7.5, "y": 2}, + {"matrix": [2, 8], "x": 8.5, "y": 2}, + {"matrix": [2, 9], "x": 9.5, "y": 2}, + {"matrix": [2, 10], "x": 10.5, "y": 2}, + {"matrix": [2, 11], "x": 11.5, "y": 2}, + {"matrix": [2, 12], "x": 12.5, "y": 2}, + {"matrix": [2, 14], "x": 13.5, "y": 2, "w": 1.5}, + {"matrix": [2, 15], "x": 15, "y": 2}, + + {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75}, + {"matrix": [3, 1], "x": 1.75, "y": 3}, + {"matrix": [3, 2], "x": 2.75, "y": 3}, + {"matrix": [3, 3], "x": 3.75, "y": 3}, + {"matrix": [3, 4], "x": 4.75, "y": 3}, + {"matrix": [3, 5], "x": 5.75, "y": 3}, + {"matrix": [3, 6], "x": 6.75, "y": 3}, + {"matrix": [3, 7], "x": 7.75, "y": 3}, + {"matrix": [3, 8], "x": 8.75, "y": 3}, + {"matrix": [3, 9], "x": 9.75, "y": 3}, + {"matrix": [3, 10], "x": 10.75, "y": 3}, + {"matrix": [3, 11], "x": 11.75, "y": 3}, + {"matrix": [3, 13], "x": 12.75, "y": 3, "w": 2.25}, + {"matrix": [3, 15], "x": 15, "y": 3}, + + {"matrix": [4, 0], "x": 0, "y": 4, "w": 2.25}, + {"matrix": [4, 2], "x": 2.25, "y": 4}, + {"matrix": [4, 3], "x": 3.25, "y": 4}, + {"matrix": [4, 4], "x": 4.25, "y": 4}, + {"matrix": [4, 5], "x": 5.25, "y": 4}, + {"matrix": [4, 6], "x": 6.25, "y": 4}, + {"matrix": [4, 7], "x": 7.25, "y": 4}, + {"matrix": [4, 8], "x": 8.25, "y": 4}, + {"matrix": [4, 9], "x": 9.25, "y": 4}, + {"matrix": [4, 10], "x": 10.25, "y": 4}, + {"matrix": [4, 11], "x": 11.25, "y": 4}, + {"matrix": [4, 12], "x": 12.25, "y": 4, "w": 1.75}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4}, + + {"matrix": [5, 0], "x": 0, "y": 5, "w": 1.25}, + {"matrix": [5, 1], "x": 1.25, "y": 5, "w": 1.25}, + {"matrix": [5, 2], "x": 2.5, "y": 5, "w": 1.25}, + {"matrix": [5, 6], "x": 3.75, "y": 5, "w": 6.25}, + {"matrix": [5, 10], "x": 10, "y": 5}, + {"matrix": [5, 11], "x": 11, "y": 5}, + {"matrix": [5, 12], "x": 12, "y": 5}, + {"matrix": [5, 13], "x": 13, "y": 5}, + {"matrix": [5, 14], "x": 14, "y": 5}, + {"matrix": [5, 15], "x": 15, "y": 5} + ] + }, + "LAYOUT_75_ansi_wkl": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 10], "x": 10, "y": 0}, + {"matrix": [0, 11], "x": 11, "y": 0}, + {"matrix": [0, 12], "x": 12, "y": 0}, + {"matrix": [0, 13], "x": 13, "y": 0}, + {"matrix": [0, 14], "x": 14, "y": 0}, + {"matrix": [0, 15], "x": 15, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1}, + {"matrix": [1, 5], "x": 5, "y": 1}, + {"matrix": [1, 6], "x": 6, "y": 1}, + {"matrix": [1, 7], "x": 7, "y": 1}, + {"matrix": [1, 8], "x": 8, "y": 1}, + {"matrix": [1, 9], "x": 9, "y": 1}, + {"matrix": [1, 10], "x": 10, "y": 1}, + {"matrix": [1, 11], "x": 11, "y": 1}, + {"matrix": [1, 12], "x": 12, "y": 1}, + {"matrix": [1, 13], "x": 13, "y": 1, "w": 2}, + {"matrix": [1, 15], "x": 15, "y": 1}, + + {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5}, + {"matrix": [2, 1], "x": 1.5, "y": 2}, + {"matrix": [2, 2], "x": 2.5, "y": 2}, + {"matrix": [2, 3], "x": 3.5, "y": 2}, + {"matrix": [2, 4], "x": 4.5, "y": 2}, + {"matrix": [2, 5], "x": 5.5, "y": 2}, + {"matrix": [2, 6], "x": 6.5, "y": 2}, + {"matrix": [2, 7], "x": 7.5, "y": 2}, + {"matrix": [2, 8], "x": 8.5, "y": 2}, + {"matrix": [2, 9], "x": 9.5, "y": 2}, + {"matrix": [2, 10], "x": 10.5, "y": 2}, + {"matrix": [2, 11], "x": 11.5, "y": 2}, + {"matrix": [2, 12], "x": 12.5, "y": 2}, + {"matrix": [2, 14], "x": 13.5, "y": 2, "w": 1.5}, + {"matrix": [2, 15], "x": 15, "y": 2}, + + {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75}, + {"matrix": [3, 1], "x": 1.75, "y": 3}, + {"matrix": [3, 2], "x": 2.75, "y": 3}, + {"matrix": [3, 3], "x": 3.75, "y": 3}, + {"matrix": [3, 4], "x": 4.75, "y": 3}, + {"matrix": [3, 5], "x": 5.75, "y": 3}, + {"matrix": [3, 6], "x": 6.75, "y": 3}, + {"matrix": [3, 7], "x": 7.75, "y": 3}, + {"matrix": [3, 8], "x": 8.75, "y": 3}, + {"matrix": [3, 9], "x": 9.75, "y": 3}, + {"matrix": [3, 10], "x": 10.75, "y": 3}, + {"matrix": [3, 11], "x": 11.75, "y": 3}, + {"matrix": [3, 13], "x": 12.75, "y": 3, "w": 2.25}, + {"matrix": [3, 15], "x": 15, "y": 3}, + + {"matrix": [4, 0], "x": 0, "y": 4, "w": 2.25}, + {"matrix": [4, 2], "x": 2.25, "y": 4}, + {"matrix": [4, 3], "x": 3.25, "y": 4}, + {"matrix": [4, 4], "x": 4.25, "y": 4}, + {"matrix": [4, 5], "x": 5.25, "y": 4}, + {"matrix": [4, 6], "x": 6.25, "y": 4}, + {"matrix": [4, 7], "x": 7.25, "y": 4}, + {"matrix": [4, 8], "x": 8.25, "y": 4}, + {"matrix": [4, 9], "x": 9.25, "y": 4}, + {"matrix": [4, 10], "x": 10.25, "y": 4}, + {"matrix": [4, 11], "x": 11.25, "y": 4}, + {"matrix": [4, 12], "x": 12.25, "y": 4, "w": 1.75}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4}, + + {"matrix": [5, 0], "x": 0, "y": 5, "w": 1.5}, + {"matrix": [5, 1], "x": 1.5, "y": 5, "w": 1.5}, + {"matrix": [5, 6], "x": 3, "y": 5, "w": 7}, + {"matrix": [5, 10], "x": 10, "y": 5, "w": 1.5}, + {"matrix": [5, 12], "x": 11.5, "y": 5, "w": 1.5}, + {"matrix": [5, 13], "x": 13, "y": 5}, + {"matrix": [5, 14], "x": 14, "y": 5}, + {"matrix": [5, 15], "x": 15, "y": 5} + ] + }, + "LAYOUT_75_ansi_wkl_split_bs": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 10], "x": 10, "y": 0}, + {"matrix": [0, 11], "x": 11, "y": 0}, + {"matrix": [0, 12], "x": 12, "y": 0}, + {"matrix": [0, 13], "x": 13, "y": 0}, + {"matrix": [0, 14], "x": 14, "y": 0}, + {"matrix": [0, 15], "x": 15, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1}, + {"matrix": [1, 5], "x": 5, "y": 1}, + {"matrix": [1, 6], "x": 6, "y": 1}, + {"matrix": [1, 7], "x": 7, "y": 1}, + {"matrix": [1, 8], "x": 8, "y": 1}, + {"matrix": [1, 9], "x": 9, "y": 1}, + {"matrix": [1, 10], "x": 10, "y": 1}, + {"matrix": [1, 11], "x": 11, "y": 1}, + {"matrix": [1, 12], "x": 12, "y": 1}, + {"matrix": [1, 13], "x": 13, "y": 1}, + {"matrix": [1, 14], "x": 14, "y": 1}, + {"matrix": [1, 15], "x": 15, "y": 1}, + + {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5}, + {"matrix": [2, 1], "x": 1.5, "y": 2}, + {"matrix": [2, 2], "x": 2.5, "y": 2}, + {"matrix": [2, 3], "x": 3.5, "y": 2}, + {"matrix": [2, 4], "x": 4.5, "y": 2}, + {"matrix": [2, 5], "x": 5.5, "y": 2}, + {"matrix": [2, 6], "x": 6.5, "y": 2}, + {"matrix": [2, 7], "x": 7.5, "y": 2}, + {"matrix": [2, 8], "x": 8.5, "y": 2}, + {"matrix": [2, 9], "x": 9.5, "y": 2}, + {"matrix": [2, 10], "x": 10.5, "y": 2}, + {"matrix": [2, 11], "x": 11.5, "y": 2}, + {"matrix": [2, 12], "x": 12.5, "y": 2}, + {"matrix": [2, 14], "x": 13.5, "y": 2, "w": 1.5}, + {"matrix": [2, 15], "x": 15, "y": 2}, + + {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75}, + {"matrix": [3, 1], "x": 1.75, "y": 3}, + {"matrix": [3, 2], "x": 2.75, "y": 3}, + {"matrix": [3, 3], "x": 3.75, "y": 3}, + {"matrix": [3, 4], "x": 4.75, "y": 3}, + {"matrix": [3, 5], "x": 5.75, "y": 3}, + {"matrix": [3, 6], "x": 6.75, "y": 3}, + {"matrix": [3, 7], "x": 7.75, "y": 3}, + {"matrix": [3, 8], "x": 8.75, "y": 3}, + {"matrix": [3, 9], "x": 9.75, "y": 3}, + {"matrix": [3, 10], "x": 10.75, "y": 3}, + {"matrix": [3, 11], "x": 11.75, "y": 3}, + {"matrix": [3, 13], "x": 12.75, "y": 3, "w": 2.25}, + {"matrix": [3, 15], "x": 15, "y": 3}, + + {"matrix": [4, 0], "x": 0, "y": 4, "w": 2.25}, + {"matrix": [4, 2], "x": 2.25, "y": 4}, + {"matrix": [4, 3], "x": 3.25, "y": 4}, + {"matrix": [4, 4], "x": 4.25, "y": 4}, + {"matrix": [4, 5], "x": 5.25, "y": 4}, + {"matrix": [4, 6], "x": 6.25, "y": 4}, + {"matrix": [4, 7], "x": 7.25, "y": 4}, + {"matrix": [4, 8], "x": 8.25, "y": 4}, + {"matrix": [4, 9], "x": 9.25, "y": 4}, + {"matrix": [4, 10], "x": 10.25, "y": 4}, + {"matrix": [4, 11], "x": 11.25, "y": 4}, + {"matrix": [4, 12], "x": 12.25, "y": 4, "w": 1.75}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4}, + + {"matrix": [5, 0], "x": 0, "y": 5, "w": 1.5}, + {"matrix": [5, 1], "x": 1.5, "y": 5, "w": 1.5}, + {"matrix": [5, 6], "x": 3, "y": 5, "w": 7}, + {"matrix": [5, 10], "x": 10, "y": 5, "w": 1.5}, + {"matrix": [5, 12], "x": 11.5, "y": 5, "w": 1.5}, + {"matrix": [5, 13], "x": 13, "y": 5}, + {"matrix": [5, 14], "x": 14, "y": 5}, + {"matrix": [5, 15], "x": 15, "y": 5} + ] + }, + "LAYOUT_75_iso": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 10], "x": 10, "y": 0}, + {"matrix": [0, 11], "x": 11, "y": 0}, + {"matrix": [0, 12], "x": 12, "y": 0}, + {"matrix": [0, 13], "x": 13, "y": 0}, + {"matrix": [0, 14], "x": 14, "y": 0}, + {"matrix": [0, 15], "x": 15, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1}, + {"matrix": [1, 5], "x": 5, "y": 1}, + {"matrix": [1, 6], "x": 6, "y": 1}, + {"matrix": [1, 7], "x": 7, "y": 1}, + {"matrix": [1, 8], "x": 8, "y": 1}, + {"matrix": [1, 9], "x": 9, "y": 1}, + {"matrix": [1, 10], "x": 10, "y": 1}, + {"matrix": [1, 11], "x": 11, "y": 1}, + {"matrix": [1, 12], "x": 12, "y": 1}, + {"matrix": [1, 13], "x": 13, "y": 1, "w": 2}, + {"matrix": [1, 15], "x": 15, "y": 1}, + + {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5}, + {"matrix": [2, 1], "x": 1.5, "y": 2}, + {"matrix": [2, 2], "x": 2.5, "y": 2}, + {"matrix": [2, 3], "x": 3.5, "y": 2}, + {"matrix": [2, 4], "x": 4.5, "y": 2}, + {"matrix": [2, 5], "x": 5.5, "y": 2}, + {"matrix": [2, 6], "x": 6.5, "y": 2}, + {"matrix": [2, 7], "x": 7.5, "y": 2}, + {"matrix": [2, 8], "x": 8.5, "y": 2}, + {"matrix": [2, 9], "x": 9.5, "y": 2}, + {"matrix": [2, 10], "x": 10.5, "y": 2}, + {"matrix": [2, 11], "x": 11.5, "y": 2}, + {"matrix": [2, 12], "x": 12.5, "y": 2}, + {"matrix": [2, 15], "x": 15, "y": 2}, + + {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75}, + {"matrix": [3, 1], "x": 1.75, "y": 3}, + {"matrix": [3, 2], "x": 2.75, "y": 3}, + {"matrix": [3, 3], "x": 3.75, "y": 3}, + {"matrix": [3, 4], "x": 4.75, "y": 3}, + {"matrix": [3, 5], "x": 5.75, "y": 3}, + {"matrix": [3, 6], "x": 6.75, "y": 3}, + {"matrix": [3, 7], "x": 7.75, "y": 3}, + {"matrix": [3, 8], "x": 8.75, "y": 3}, + {"matrix": [3, 9], "x": 9.75, "y": 3}, + {"matrix": [3, 10], "x": 10.75, "y": 3}, + {"matrix": [3, 11], "x": 11.75, "y": 3}, + {"matrix": [3, 12], "x": 12.75, "y": 3}, + {"matrix": [2, 14], "x": 13.75, "y": 2, "w": 1.25, "h": 2}, + {"matrix": [3, 15], "x": 15, "y": 3}, + + {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, + {"matrix": [4, 1], "x": 1.25, "y": 4}, + {"matrix": [4, 2], "x": 2.25, "y": 4}, + {"matrix": [4, 3], "x": 3.25, "y": 4}, + {"matrix": [4, 4], "x": 4.25, "y": 4}, + {"matrix": [4, 5], "x": 5.25, "y": 4}, + {"matrix": [4, 6], "x": 6.25, "y": 4}, + {"matrix": [4, 7], "x": 7.25, "y": 4}, + {"matrix": [4, 8], "x": 8.25, "y": 4}, + {"matrix": [4, 9], "x": 9.25, "y": 4}, + {"matrix": [4, 10], "x": 10.25, "y": 4}, + {"matrix": [4, 11], "x": 11.25, "y": 4}, + {"matrix": [4, 12], "x": 12.25, "y": 4, "w": 1.75}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4}, + + {"matrix": [5, 0], "x": 0, "y": 5, "w": 1.25}, + {"matrix": [5, 1], "x": 1.25, "y": 5, "w": 1.25}, + {"matrix": [5, 2], "x": 2.5, "y": 5, "w": 1.25}, + {"matrix": [5, 6], "x": 3.75, "y": 5, "w": 6.25}, + {"matrix": [5, 10], "x": 10, "y": 5}, + {"matrix": [5, 11], "x": 11, "y": 5}, + {"matrix": [5, 12], "x": 12, "y": 5}, + {"matrix": [5, 13], "x": 13, "y": 5}, + {"matrix": [5, 14], "x": 14, "y": 5}, + {"matrix": [5, 15], "x": 15, "y": 5} + ] + }, + "LAYOUT_75_iso_split_bs": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 10], "x": 10, "y": 0}, + {"matrix": [0, 11], "x": 11, "y": 0}, + {"matrix": [0, 12], "x": 12, "y": 0}, + {"matrix": [0, 13], "x": 13, "y": 0}, + {"matrix": [0, 14], "x": 14, "y": 0}, + {"matrix": [0, 15], "x": 15, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1}, + {"matrix": [1, 5], "x": 5, "y": 1}, + {"matrix": [1, 6], "x": 6, "y": 1}, + {"matrix": [1, 7], "x": 7, "y": 1}, + {"matrix": [1, 8], "x": 8, "y": 1}, + {"matrix": [1, 9], "x": 9, "y": 1}, + {"matrix": [1, 10], "x": 10, "y": 1}, + {"matrix": [1, 11], "x": 11, "y": 1}, + {"matrix": [1, 12], "x": 12, "y": 1}, + {"matrix": [1, 13], "x": 13, "y": 1}, + {"matrix": [1, 14], "x": 14, "y": 1}, + {"matrix": [1, 15], "x": 15, "y": 1}, + + {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5}, + {"matrix": [2, 1], "x": 1.5, "y": 2}, + {"matrix": [2, 2], "x": 2.5, "y": 2}, + {"matrix": [2, 3], "x": 3.5, "y": 2}, + {"matrix": [2, 4], "x": 4.5, "y": 2}, + {"matrix": [2, 5], "x": 5.5, "y": 2}, + {"matrix": [2, 6], "x": 6.5, "y": 2}, + {"matrix": [2, 7], "x": 7.5, "y": 2}, + {"matrix": [2, 8], "x": 8.5, "y": 2}, + {"matrix": [2, 9], "x": 9.5, "y": 2}, + {"matrix": [2, 10], "x": 10.5, "y": 2}, + {"matrix": [2, 11], "x": 11.5, "y": 2}, + {"matrix": [2, 12], "x": 12.5, "y": 2}, + {"matrix": [2, 15], "x": 15, "y": 2}, + + {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75}, + {"matrix": [3, 1], "x": 1.75, "y": 3}, + {"matrix": [3, 2], "x": 2.75, "y": 3}, + {"matrix": [3, 3], "x": 3.75, "y": 3}, + {"matrix": [3, 4], "x": 4.75, "y": 3}, + {"matrix": [3, 5], "x": 5.75, "y": 3}, + {"matrix": [3, 6], "x": 6.75, "y": 3}, + {"matrix": [3, 7], "x": 7.75, "y": 3}, + {"matrix": [3, 8], "x": 8.75, "y": 3}, + {"matrix": [3, 9], "x": 9.75, "y": 3}, + {"matrix": [3, 10], "x": 10.75, "y": 3}, + {"matrix": [3, 11], "x": 11.75, "y": 3}, + {"matrix": [3, 12], "x": 12.75, "y": 3}, + {"matrix": [2, 14], "x": 13.75, "y": 2, "w": 1.25, "h": 2}, + {"matrix": [3, 15], "x": 15, "y": 3}, + + {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, + {"matrix": [4, 1], "x": 1.25, "y": 4}, + {"matrix": [4, 2], "x": 2.25, "y": 4}, + {"matrix": [4, 3], "x": 3.25, "y": 4}, + {"matrix": [4, 4], "x": 4.25, "y": 4}, + {"matrix": [4, 5], "x": 5.25, "y": 4}, + {"matrix": [4, 6], "x": 6.25, "y": 4}, + {"matrix": [4, 7], "x": 7.25, "y": 4}, + {"matrix": [4, 8], "x": 8.25, "y": 4}, + {"matrix": [4, 9], "x": 9.25, "y": 4}, + {"matrix": [4, 10], "x": 10.25, "y": 4}, + {"matrix": [4, 11], "x": 11.25, "y": 4}, + {"matrix": [4, 12], "x": 12.25, "y": 4, "w": 1.75}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4}, + + {"matrix": [5, 0], "x": 0, "y": 5, "w": 1.25}, + {"matrix": [5, 1], "x": 1.25, "y": 5, "w": 1.25}, + {"matrix": [5, 2], "x": 2.5, "y": 5, "w": 1.25}, + {"matrix": [5, 6], "x": 3.75, "y": 5, "w": 6.25}, + {"matrix": [5, 10], "x": 10, "y": 5}, + {"matrix": [5, 11], "x": 11, "y": 5}, + {"matrix": [5, 12], "x": 12, "y": 5}, + {"matrix": [5, 13], "x": 13, "y": 5}, + {"matrix": [5, 14], "x": 14, "y": 5}, + {"matrix": [5, 15], "x": 15, "y": 5} + ] + }, + "LAYOUT_75_iso_wkl": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 10], "x": 10, "y": 0}, + {"matrix": [0, 11], "x": 11, "y": 0}, + {"matrix": [0, 12], "x": 12, "y": 0}, + {"matrix": [0, 13], "x": 13, "y": 0}, + {"matrix": [0, 14], "x": 14, "y": 0}, + {"matrix": [0, 15], "x": 15, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1}, + {"matrix": [1, 5], "x": 5, "y": 1}, + {"matrix": [1, 6], "x": 6, "y": 1}, + {"matrix": [1, 7], "x": 7, "y": 1}, + {"matrix": [1, 8], "x": 8, "y": 1}, + {"matrix": [1, 9], "x": 9, "y": 1}, + {"matrix": [1, 10], "x": 10, "y": 1}, + {"matrix": [1, 11], "x": 11, "y": 1}, + {"matrix": [1, 12], "x": 12, "y": 1}, + {"matrix": [1, 13], "x": 13, "y": 1, "w": 2}, + {"matrix": [1, 15], "x": 15, "y": 1}, + + {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5}, + {"matrix": [2, 1], "x": 1.5, "y": 2}, + {"matrix": [2, 2], "x": 2.5, "y": 2}, + {"matrix": [2, 3], "x": 3.5, "y": 2}, + {"matrix": [2, 4], "x": 4.5, "y": 2}, + {"matrix": [2, 5], "x": 5.5, "y": 2}, + {"matrix": [2, 6], "x": 6.5, "y": 2}, + {"matrix": [2, 7], "x": 7.5, "y": 2}, + {"matrix": [2, 8], "x": 8.5, "y": 2}, + {"matrix": [2, 9], "x": 9.5, "y": 2}, + {"matrix": [2, 10], "x": 10.5, "y": 2}, + {"matrix": [2, 11], "x": 11.5, "y": 2}, + {"matrix": [2, 12], "x": 12.5, "y": 2}, + {"matrix": [2, 15], "x": 15, "y": 2}, + + {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75}, + {"matrix": [3, 1], "x": 1.75, "y": 3}, + {"matrix": [3, 2], "x": 2.75, "y": 3}, + {"matrix": [3, 3], "x": 3.75, "y": 3}, + {"matrix": [3, 4], "x": 4.75, "y": 3}, + {"matrix": [3, 5], "x": 5.75, "y": 3}, + {"matrix": [3, 6], "x": 6.75, "y": 3}, + {"matrix": [3, 7], "x": 7.75, "y": 3}, + {"matrix": [3, 8], "x": 8.75, "y": 3}, + {"matrix": [3, 9], "x": 9.75, "y": 3}, + {"matrix": [3, 10], "x": 10.75, "y": 3}, + {"matrix": [3, 11], "x": 11.75, "y": 3}, + {"matrix": [3, 12], "x": 12.75, "y": 3}, + {"matrix": [2, 14], "x": 13.75, "y": 2, "w": 1.25, "h": 2}, + {"matrix": [3, 15], "x": 15, "y": 3}, + + {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, + {"matrix": [4, 1], "x": 1.25, "y": 4}, + {"matrix": [4, 2], "x": 2.25, "y": 4}, + {"matrix": [4, 3], "x": 3.25, "y": 4}, + {"matrix": [4, 4], "x": 4.25, "y": 4}, + {"matrix": [4, 5], "x": 5.25, "y": 4}, + {"matrix": [4, 6], "x": 6.25, "y": 4}, + {"matrix": [4, 7], "x": 7.25, "y": 4}, + {"matrix": [4, 8], "x": 8.25, "y": 4}, + {"matrix": [4, 9], "x": 9.25, "y": 4}, + {"matrix": [4, 10], "x": 10.25, "y": 4}, + {"matrix": [4, 11], "x": 11.25, "y": 4}, + {"matrix": [4, 12], "x": 12.25, "y": 4, "w": 1.75}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4}, + + {"matrix": [5, 0], "x": 0, "y": 5, "w": 1.5}, + {"matrix": [5, 1], "x": 1.5, "y": 5, "w": 1.5}, + {"matrix": [5, 6], "x": 3, "y": 5, "w": 7}, + {"matrix": [5, 10], "x": 10, "y": 5, "w": 1.5}, + {"matrix": [5, 12], "x": 11.5, "y": 5, "w": 1.5}, + {"matrix": [5, 13], "x": 13, "y": 5}, + {"matrix": [5, 14], "x": 14, "y": 5}, + {"matrix": [5, 15], "x": 15, "y": 5} + ] + }, + "LAYOUT_75_iso_wkl_split_bs": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 10], "x": 10, "y": 0}, + {"matrix": [0, 11], "x": 11, "y": 0}, + {"matrix": [0, 12], "x": 12, "y": 0}, + {"matrix": [0, 13], "x": 13, "y": 0}, + {"matrix": [0, 14], "x": 14, "y": 0}, + {"matrix": [0, 15], "x": 15, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1}, + {"matrix": [1, 5], "x": 5, "y": 1}, + {"matrix": [1, 6], "x": 6, "y": 1}, + {"matrix": [1, 7], "x": 7, "y": 1}, + {"matrix": [1, 8], "x": 8, "y": 1}, + {"matrix": [1, 9], "x": 9, "y": 1}, + {"matrix": [1, 10], "x": 10, "y": 1}, + {"matrix": [1, 11], "x": 11, "y": 1}, + {"matrix": [1, 12], "x": 12, "y": 1}, + {"matrix": [1, 13], "x": 13, "y": 1}, + {"matrix": [1, 14], "x": 14, "y": 1}, + {"matrix": [1, 15], "x": 15, "y": 1}, + + {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5}, + {"matrix": [2, 1], "x": 1.5, "y": 2}, + {"matrix": [2, 2], "x": 2.5, "y": 2}, + {"matrix": [2, 3], "x": 3.5, "y": 2}, + {"matrix": [2, 4], "x": 4.5, "y": 2}, + {"matrix": [2, 5], "x": 5.5, "y": 2}, + {"matrix": [2, 6], "x": 6.5, "y": 2}, + {"matrix": [2, 7], "x": 7.5, "y": 2}, + {"matrix": [2, 8], "x": 8.5, "y": 2}, + {"matrix": [2, 9], "x": 9.5, "y": 2}, + {"matrix": [2, 10], "x": 10.5, "y": 2}, + {"matrix": [2, 11], "x": 11.5, "y": 2}, + {"matrix": [2, 12], "x": 12.5, "y": 2}, + {"matrix": [2, 15], "x": 15, "y": 2}, + + {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75}, + {"matrix": [3, 1], "x": 1.75, "y": 3}, + {"matrix": [3, 2], "x": 2.75, "y": 3}, + {"matrix": [3, 3], "x": 3.75, "y": 3}, + {"matrix": [3, 4], "x": 4.75, "y": 3}, + {"matrix": [3, 5], "x": 5.75, "y": 3}, + {"matrix": [3, 6], "x": 6.75, "y": 3}, + {"matrix": [3, 7], "x": 7.75, "y": 3}, + {"matrix": [3, 8], "x": 8.75, "y": 3}, + {"matrix": [3, 9], "x": 9.75, "y": 3}, + {"matrix": [3, 10], "x": 10.75, "y": 3}, + {"matrix": [3, 11], "x": 11.75, "y": 3}, + {"matrix": [3, 12], "x": 12.75, "y": 3}, + {"matrix": [2, 14], "x": 13.75, "y": 2, "w": 1.25, "h": 2}, + {"matrix": [3, 15], "x": 15, "y": 3}, + + {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, + {"matrix": [4, 1], "x": 1.25, "y": 4}, + {"matrix": [4, 2], "x": 2.25, "y": 4}, + {"matrix": [4, 3], "x": 3.25, "y": 4}, + {"matrix": [4, 4], "x": 4.25, "y": 4}, + {"matrix": [4, 5], "x": 5.25, "y": 4}, + {"matrix": [4, 6], "x": 6.25, "y": 4}, + {"matrix": [4, 7], "x": 7.25, "y": 4}, + {"matrix": [4, 8], "x": 8.25, "y": 4}, + {"matrix": [4, 9], "x": 9.25, "y": 4}, + {"matrix": [4, 10], "x": 10.25, "y": 4}, + {"matrix": [4, 11], "x": 11.25, "y": 4}, + {"matrix": [4, 12], "x": 12.25, "y": 4, "w": 1.75}, + {"matrix": [4, 14], "x": 14, "y": 4}, + {"matrix": [4, 15], "x": 15, "y": 4}, + + {"matrix": [5, 0], "x": 0, "y": 5, "w": 1.5}, + {"matrix": [5, 1], "x": 1.5, "y": 5, "w": 1.5}, + {"matrix": [5, 6], "x": 3, "y": 5, "w": 7}, + {"matrix": [5, 10], "x": 10, "y": 5, "w": 1.5}, + {"matrix": [5, 12], "x": 11.5, "y": 5, "w": 1.5}, + {"matrix": [5, 13], "x": 13, "y": 5}, + {"matrix": [5, 14], "x": 14, "y": 5}, + {"matrix": [5, 15], "x": 15, "y": 5} + ] } } } diff --git a/keyboards/mechlovin/olly/octagon/keymaps/default/keymap.c b/keyboards/mechlovin/olly/octagon/keymaps/default/keymap.c index 353f5f5d6d..19cd554ac3 100644 --- a/keyboards/mechlovin/olly/octagon/keymaps/default/keymap.c +++ b/keyboards/mechlovin/olly/octagon/keymaps/default/keymap.c @@ -16,12 +16,12 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_split_bs( + [0] = LAYOUT_all( 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_PAUS, 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_DEL, KC_HOME, 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_PGUP, 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_NUHS, KC_ENT, KC_PGDN, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, _______, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ) + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), }; diff --git a/keyboards/mechlovin/olly/octagon/matrix_diagram.md b/keyboards/mechlovin/olly/octagon/matrix_diagram.md new file mode 100644 index 0000000000..426e0691d1 --- /dev/null +++ b/keyboards/mechlovin/olly/octagon/matrix_diagram.md @@ -0,0 +1,26 @@ +# Matrix Diagram for Mechlovin Olly Octagon + +``` +┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ +│00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │0F │ +├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ ┌───────┐ +│10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │1E │1F │ │1D │ 2u Backspace +├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ └─┬─────┤ +│20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │2E │2F │ │ │ +├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ ┌──┴┐2E │ ISO Enter +│30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3D │3F │ │3C │ │ +├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ └───┴────┘ +│40 │41 │42 │43 │44 │45 │46 │47 │48 │49 │4A │4B │4C │4E │4F │ +├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ +│50 │51 │52 │56 │5A │5B │5C │5D │5E │5F │ +└────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ +┌────────┐ +│40 │ 2.25u LShift +└────────┘ +┌────┬───┬────┬────────────────────────┬────┬───┬───┬───┬───┬───┐ +│50 │51 │52 │56 │5A │5B │5C │5D │5E │5F │ Alternative +└────┴───┴────┴────────────────────────┴────┴───┴───┴───┴───┴───┘ +┌─────┬─────┬───────────────────────────┬─────┬─────┬───┬───┬───┐ +│50 │51 │56 │5A │5C │5D │5E │5F │ WKL +└─────┴─────┴───────────────────────────┴─────┴─────┴───┴───┴───┘ +``` diff --git a/keyboards/mechlovin/olly/orion/keyboard.json b/keyboards/mechlovin/olly/orion/keyboard.json index 2780e21949..408d904899 100644 --- a/keyboards/mechlovin/olly/orion/keyboard.json +++ b/keyboards/mechlovin/olly/orion/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Olly Orion", "manufacturer": "Mechlovin.Studio", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/pisces/keyboard.json b/keyboards/mechlovin/pisces/keyboard.json index 37915826e6..4186a1c750 100644 --- a/keyboards/mechlovin/pisces/keyboard.json +++ b/keyboards/mechlovin/pisces/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Pisces65", "manufacturer": "Team.Mechlovin", - "url": "", "maintainer": "mechlovin", "usb": { "vid": "0x4D4C", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/mechlovin/serratus/keyboard.json b/keyboards/mechlovin/serratus/keyboard.json index c283c48a35..8cf0778c1d 100644 --- a/keyboards/mechlovin/serratus/keyboard.json +++ b/keyboards/mechlovin/serratus/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Serratus Rev.1", "manufacturer": "Mechlovin Studio", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/th1800/keyboard.json b/keyboards/mechlovin/th1800/keyboard.json index 66b7487545..8162deca81 100644 --- a/keyboards/mechlovin/th1800/keyboard.json +++ b/keyboards/mechlovin/th1800/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "th-1800", "manufacturer": "Team Mechlovin", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/zed1800/info.json b/keyboards/mechlovin/zed1800/info.json index 9de42c2442..aecaf6d922 100644 --- a/keyboards/mechlovin/zed1800/info.json +++ b/keyboards/mechlovin/zed1800/info.json @@ -1,6 +1,5 @@ { "manufacturer": "Mechlovin Studio", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/zed60/keyboard.json b/keyboards/mechlovin/zed60/keyboard.json index 136170eec6..480517a301 100644 --- a/keyboards/mechlovin/zed60/keyboard.json +++ b/keyboards/mechlovin/zed60/keyboard.json @@ -38,7 +38,6 @@ "saturation_steps": 8, "sleep": true }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x0602", diff --git a/keyboards/mechlovin/zed65/mono_led/keyboard.json b/keyboards/mechlovin/zed65/mono_led/keyboard.json index 763fbe9f4c..e33db35a7a 100644 --- a/keyboards/mechlovin/zed65/mono_led/keyboard.json +++ b/keyboards/mechlovin/zed65/mono_led/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Zed65-MonoLED", "manufacturer": "Mechlovin Studio", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/zed65/no_backlight/cor65/keyboard.json b/keyboards/mechlovin/zed65/no_backlight/cor65/keyboard.json index 4b3ed831c5..56103e44db 100644 --- a/keyboards/mechlovin/zed65/no_backlight/cor65/keyboard.json +++ b/keyboards/mechlovin/zed65/no_backlight/cor65/keyboard.json @@ -11,7 +11,6 @@ "cols": ["B11", "B10", "B2", "B1", "B0", "A6", "A5", "A4", "A3", "A2", "C13", "B7", "B6", "B5", "B4", "B3"], "rows": ["B12", "B13", "B14", "B15", "A1"] }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x6504", diff --git a/keyboards/mechlovin/zed65/no_backlight/retro66/keyboard.json b/keyboards/mechlovin/zed65/no_backlight/retro66/keyboard.json index 49ed44f0a1..8fcfde5db9 100644 --- a/keyboards/mechlovin/zed65/no_backlight/retro66/keyboard.json +++ b/keyboards/mechlovin/zed65/no_backlight/retro66/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Retro66", "manufacturer": "Mechlovin Studio", - "url": "", "maintainer": "Mechlovin' Studio", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechlovin/zed65/no_backlight/wearhaus66/keyboard.json b/keyboards/mechlovin/zed65/no_backlight/wearhaus66/keyboard.json index c9c9e0ddb1..c2b75fd1e4 100644 --- a/keyboards/mechlovin/zed65/no_backlight/wearhaus66/keyboard.json +++ b/keyboards/mechlovin/zed65/no_backlight/wearhaus66/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Wearhaus66", "manufacturer": "Mechlovin Studio", - "url": "", "maintainer": "mechlovin", "usb": { "vid": "0x4D4C", diff --git a/keyboards/mechstudio/dawn/keyboard.json b/keyboards/mechstudio/dawn/keyboard.json index dc1894f4e5..4c96a37c52 100644 --- a/keyboards/mechstudio/dawn/keyboard.json +++ b/keyboards/mechstudio/dawn/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/mechwild/bde/info.json b/keyboards/mechwild/bde/info.json index 918c792aa7..edecde1eba 100644 --- a/keyboards/mechwild/bde/info.json +++ b/keyboards/mechwild/bde/info.json @@ -10,8 +10,7 @@ }, "development_board": "promicro", "rgblight": { - "sleep": true, - "max_brightness": 255 + "sleep": true }, "tapping": { "tap_keycode_delay": 10, diff --git a/keyboards/mechwild/bde/rev2/keyboard.json b/keyboards/mechwild/bde/rev2/keyboard.json index 932f99f0e9..b166934e1e 100644 --- a/keyboards/mechwild/bde/rev2/keyboard.json +++ b/keyboards/mechwild/bde/rev2/keyboard.json @@ -34,7 +34,6 @@ "animations": { "rainbow_swirl": true }, - "hue_steps": 8, "saturation_steps": 8, "brightness_steps": 8 }, diff --git a/keyboards/mechwild/mercutio/keyboard.json b/keyboards/mechwild/mercutio/keyboard.json index 0a7d758128..d0b7d51029 100644 --- a/keyboards/mechwild/mercutio/keyboard.json +++ b/keyboards/mechwild/mercutio/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/mechwild/murphpad/keyboard.json b/keyboards/mechwild/murphpad/keyboard.json index 47d99f78e9..8ab90bd937 100644 --- a/keyboards/mechwild/murphpad/keyboard.json +++ b/keyboards/mechwild/murphpad/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/mechwild/obe/info.json b/keyboards/mechwild/obe/info.json index 2247f69fac..5244062e9a 100644 --- a/keyboards/mechwild/obe/info.json +++ b/keyboards/mechwild/obe/info.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/mechwild/sugarglider/f401/keyboard.json b/keyboards/mechwild/sugarglider/f401/keyboard.json index 7bf58c1b45..658f174275 100644 --- a/keyboards/mechwild/sugarglider/f401/keyboard.json +++ b/keyboards/mechwild/sugarglider/f401/keyboard.json @@ -4,8 +4,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgblight": true, "encoder": true, diff --git a/keyboards/mechwild/sugarglider/f411/keyboard.json b/keyboards/mechwild/sugarglider/f411/keyboard.json index dd76af1f10..e990db524b 100644 --- a/keyboards/mechwild/sugarglider/f411/keyboard.json +++ b/keyboards/mechwild/sugarglider/f411/keyboard.json @@ -4,8 +4,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgblight": true, "encoder": true, diff --git a/keyboards/mechwild/sugarglider/info.json b/keyboards/mechwild/sugarglider/info.json index 80004f35d1..0b796f7c21 100644 --- a/keyboards/mechwild/sugarglider/info.json +++ b/keyboards/mechwild/sugarglider/info.json @@ -18,8 +18,6 @@ }, "rgblight": { "led_count": 10, - "max_brightness": 255, - "hue_steps": 8, "saturation_steps": 8, "brightness_steps": 8, "animations": { diff --git a/keyboards/mechwild/sugarglider/wide_oled/f401/keyboard.json b/keyboards/mechwild/sugarglider/wide_oled/f401/keyboard.json index 7bf58c1b45..658f174275 100644 --- a/keyboards/mechwild/sugarglider/wide_oled/f401/keyboard.json +++ b/keyboards/mechwild/sugarglider/wide_oled/f401/keyboard.json @@ -4,8 +4,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgblight": true, "encoder": true, diff --git a/keyboards/mechwild/sugarglider/wide_oled/f411/keyboard.json b/keyboards/mechwild/sugarglider/wide_oled/f411/keyboard.json index dd76af1f10..e990db524b 100644 --- a/keyboards/mechwild/sugarglider/wide_oled/f411/keyboard.json +++ b/keyboards/mechwild/sugarglider/wide_oled/f411/keyboard.json @@ -4,8 +4,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgblight": true, "encoder": true, diff --git a/keyboards/meetlab/kafka60/keyboard.json b/keyboards/meetlab/kafka60/keyboard.json index 5dbf3f5642..2c7c41b23d 100644 --- a/keyboards/meetlab/kafka60/keyboard.json +++ b/keyboards/meetlab/kafka60/keyboard.json @@ -13,7 +13,6 @@ "cols": ["A15", "B3", "B4", "B5", "B6", "B7", "B8", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "B11"], "rows": ["B15", "A8", "B13", "B12", "A9"] }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0xBF06", diff --git a/keyboards/meetlab/kafka68/keyboard.json b/keyboards/meetlab/kafka68/keyboard.json index 3836edc3c9..418749ed43 100644 --- a/keyboards/meetlab/kafka68/keyboard.json +++ b/keyboards/meetlab/kafka68/keyboard.json @@ -14,7 +14,6 @@ "cols": ["A10", "B7", "B6", "B5", "B4", "B3", "A15", "B0", "A7", "A6", "A5", "A4", "A3", "B1", "B10", "B11"], "rows": ["B13", "B14", "B15", "A8", "A9"] }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0xAA07", diff --git a/keyboards/meetlab/kafkasplit/keyboard.json b/keyboards/meetlab/kafkasplit/keyboard.json index 375d4f7a03..77e5ec3e13 100644 --- a/keyboards/meetlab/kafkasplit/keyboard.json +++ b/keyboards/meetlab/kafkasplit/keyboard.json @@ -14,8 +14,7 @@ "wpm": true }, "indicators": { - "caps_lock": "GP25", - "on_state": 1 + "caps_lock": "GP25" }, "matrix_pins": { "cols": ["GP2", "GP3", "GP6", "GP7", "GP10", "GP11"], @@ -143,7 +142,6 @@ } } }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0xBFC2", diff --git a/keyboards/meetlab/kalice/keyboard.json b/keyboards/meetlab/kalice/keyboard.json index 5e53fe4904..eb91d64466 100644 --- a/keyboards/meetlab/kalice/keyboard.json +++ b/keyboards/meetlab/kalice/keyboard.json @@ -31,7 +31,6 @@ "led_count": 11, "saturation_steps": 8 }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0xBB04", diff --git a/keyboards/meetlab/rena/keyboard.json b/keyboards/meetlab/rena/keyboard.json index cf28f6d5f0..8787fb0ee8 100644 --- a/keyboards/meetlab/rena/keyboard.json +++ b/keyboards/meetlab/rena/keyboard.json @@ -39,7 +39,6 @@ "led_count": 1, "saturation_steps": 8 }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0xAB06", diff --git a/keyboards/mehkee96/keyboard.json b/keyboards/mehkee96/keyboard.json index 4f4d4853c8..4a72232d36 100644 --- a/keyboards/mehkee96/keyboard.json +++ b/keyboards/mehkee96/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "96KEE", "manufacturer": "Mehkee", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x20A0", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/meletrix/zoom65/keyboard.json b/keyboards/meletrix/zoom65/keyboard.json index 997b6d55e3..ce83a60be4 100644 --- a/keyboards/meletrix/zoom65/keyboard.json +++ b/keyboards/meletrix/zoom65/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "encoder": true, "extrakey": true, diff --git a/keyboards/meletrix/zoom65_lite/keyboard.json b/keyboards/meletrix/zoom65_lite/keyboard.json index 990c34206d..3977ea668a 100644 --- a/keyboards/meletrix/zoom65_lite/keyboard.json +++ b/keyboards/meletrix/zoom65_lite/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "encoder": true, "extrakey": true, diff --git a/keyboards/meletrix/zoom75/keyboard.json b/keyboards/meletrix/zoom75/keyboard.json index 20d7dc064a..04e11e19ba 100644 --- a/keyboards/meletrix/zoom75/keyboard.json +++ b/keyboards/meletrix/zoom75/keyboard.json @@ -20,8 +20,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/meletrix/zoom87/keyboard.json b/keyboards/meletrix/zoom87/keyboard.json index b2cec7968f..4f9c6812a6 100644 --- a/keyboards/meletrix/zoom87/keyboard.json +++ b/keyboards/meletrix/zoom87/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/meletrix/zoom98/keyboard.json b/keyboards/meletrix/zoom98/keyboard.json index b7d5672950..9665327972 100644 --- a/keyboards/meletrix/zoom98/keyboard.json +++ b/keyboards/meletrix/zoom98/keyboard.json @@ -19,8 +19,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "rgb_matrix": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/melgeek/mach80/info.json b/keyboards/melgeek/mach80/info.json index ade831fc36..d8a565b2e4 100755 --- a/keyboards/melgeek/mach80/info.json +++ b/keyboards/melgeek/mach80/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Mach80", "manufacturer": "MelGeek", - "url": "", "maintainer": "melgeek001365", "usb": { "vid": "0xEDED", diff --git a/keyboards/melgeek/mach80/rev1/keyboard.json b/keyboards/melgeek/mach80/rev1/keyboard.json index 5cb145793d..78a8dbf0f6 100644 --- a/keyboards/melgeek/mach80/rev1/keyboard.json +++ b/keyboards/melgeek/mach80/rev1/keyboard.json @@ -4,8 +4,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/melgeek/mach80/rev2/keyboard.json b/keyboards/melgeek/mach80/rev2/keyboard.json index 5cb145793d..78a8dbf0f6 100644 --- a/keyboards/melgeek/mach80/rev2/keyboard.json +++ b/keyboards/melgeek/mach80/rev2/keyboard.json @@ -4,8 +4,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/melgeek/mj61/info.json b/keyboards/melgeek/mj61/info.json index d34dc59364..9a3e86d5e0 100644 --- a/keyboards/melgeek/mj61/info.json +++ b/keyboards/melgeek/mj61/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "MJ61", "manufacturer": "MelGeek", - "url": "", "maintainer": "melgeek001365", "usb": { "vid": "0xEDED", diff --git a/keyboards/melgeek/mj61/rev1/keyboard.json b/keyboards/melgeek/mj61/rev1/keyboard.json index e0bd315865..b388908579 100644 --- a/keyboards/melgeek/mj61/rev1/keyboard.json +++ b/keyboards/melgeek/mj61/rev1/keyboard.json @@ -1,8 +1,6 @@ { "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/melgeek/mj61/rev2/keyboard.json b/keyboards/melgeek/mj61/rev2/keyboard.json index 779cfc091c..fcff9e10a5 100644 --- a/keyboards/melgeek/mj61/rev2/keyboard.json +++ b/keyboards/melgeek/mj61/rev2/keyboard.json @@ -1,8 +1,6 @@ { "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/melgeek/mj63/info.json b/keyboards/melgeek/mj63/info.json index c81bf9f867..af59bf8a59 100644 --- a/keyboards/melgeek/mj63/info.json +++ b/keyboards/melgeek/mj63/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "MJ63", "manufacturer": "MelGeek", - "url": "", "maintainer": "melgeek001365", "usb": { "vid": "0xEDED", diff --git a/keyboards/melgeek/mj63/rev1/keyboard.json b/keyboards/melgeek/mj63/rev1/keyboard.json index e0bd315865..b388908579 100644 --- a/keyboards/melgeek/mj63/rev1/keyboard.json +++ b/keyboards/melgeek/mj63/rev1/keyboard.json @@ -1,8 +1,6 @@ { "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/melgeek/mj63/rev2/keyboard.json b/keyboards/melgeek/mj63/rev2/keyboard.json index 779cfc091c..fcff9e10a5 100644 --- a/keyboards/melgeek/mj63/rev2/keyboard.json +++ b/keyboards/melgeek/mj63/rev2/keyboard.json @@ -1,8 +1,6 @@ { "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/melgeek/mj64/info.json b/keyboards/melgeek/mj64/info.json index 731996ef84..25d908db5d 100644 --- a/keyboards/melgeek/mj64/info.json +++ b/keyboards/melgeek/mj64/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "MJ64", "manufacturer": "MelGeek", - "url": "", "maintainer": "melgeek001365", "usb": { "vid": "0xEDED", diff --git a/keyboards/melgeek/mj64/rev1/keyboard.json b/keyboards/melgeek/mj64/rev1/keyboard.json index e0bd315865..b388908579 100644 --- a/keyboards/melgeek/mj64/rev1/keyboard.json +++ b/keyboards/melgeek/mj64/rev1/keyboard.json @@ -1,8 +1,6 @@ { "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/melgeek/mj64/rev2/keyboard.json b/keyboards/melgeek/mj64/rev2/keyboard.json index e0bd315865..b388908579 100644 --- a/keyboards/melgeek/mj64/rev2/keyboard.json +++ b/keyboards/melgeek/mj64/rev2/keyboard.json @@ -1,8 +1,6 @@ { "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/melgeek/mj64/rev3/keyboard.json b/keyboards/melgeek/mj64/rev3/keyboard.json index 779cfc091c..fcff9e10a5 100644 --- a/keyboards/melgeek/mj64/rev3/keyboard.json +++ b/keyboards/melgeek/mj64/rev3/keyboard.json @@ -1,8 +1,6 @@ { "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/melgeek/mj65/rev3/keyboard.json b/keyboards/melgeek/mj65/rev3/keyboard.json index adf0ef94bc..a4513b45e7 100644 --- a/keyboards/melgeek/mj65/rev3/keyboard.json +++ b/keyboards/melgeek/mj65/rev3/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MJ65", "manufacturer": "MelGeek", - "url": "", "maintainer": "melgeek001365", "usb": { "vid": "0xEDED", diff --git a/keyboards/melgeek/mj6xy/info.json b/keyboards/melgeek/mj6xy/info.json index 0dd1212354..3b13337aae 100755 --- a/keyboards/melgeek/mj6xy/info.json +++ b/keyboards/melgeek/mj6xy/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "MJ6XY", "manufacturer": "MelGeek", - "url": "", "maintainer": "melgeek001365", "usb": { "vid": "0xEDED", diff --git a/keyboards/melgeek/mj6xy/rev3/keyboard.json b/keyboards/melgeek/mj6xy/rev3/keyboard.json index ae44451236..993887a092 100644 --- a/keyboards/melgeek/mj6xy/rev3/keyboard.json +++ b/keyboards/melgeek/mj6xy/rev3/keyboard.json @@ -2,8 +2,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/melgeek/mojo68/rev1/keyboard.json b/keyboards/melgeek/mojo68/rev1/keyboard.json index 7f21839292..88f17665b4 100755 --- a/keyboards/melgeek/mojo68/rev1/keyboard.json +++ b/keyboards/melgeek/mojo68/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MoJo68", "manufacturer": "MelGeek", - "url": "", "maintainer": "melgeek001365", "usb": { "vid": "0xEDED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/melgeek/mojo75/rev1/keyboard.json b/keyboards/melgeek/mojo75/rev1/keyboard.json index a1b93afb69..0b0a722c90 100644 --- a/keyboards/melgeek/mojo75/rev1/keyboard.json +++ b/keyboards/melgeek/mojo75/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MoJo75", "manufacturer": "MelGeek", - "url": "", "maintainer": "melgeek001365", "usb": { "vid": "0xEDED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/melgeek/tegic/rev1/keyboard.json b/keyboards/melgeek/tegic/rev1/keyboard.json index 0a2e9306f6..5a1ca4f350 100644 --- a/keyboards/melgeek/tegic/rev1/keyboard.json +++ b/keyboards/melgeek/tegic/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "tegic", "manufacturer": "MelGeek", - "url": "", "maintainer": "melgeek001365", "usb": { "vid": "0xEDED", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/melgeek/z70ultra/rev1/keyboard.json b/keyboards/melgeek/z70ultra/rev1/keyboard.json index de1b1df646..5a8868265b 100644 --- a/keyboards/melgeek/z70ultra/rev1/keyboard.json +++ b/keyboards/melgeek/z70ultra/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Z70Ultra", "manufacturer": "MelGeek", - "url": "", "maintainer": "melgeek001365", "usb": { "vid": "0xEDED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/meme/keyboard.json b/keyboards/meme/keyboard.json index 27acfc5a33..5be88543dd 100644 --- a/keyboards/meme/keyboard.json +++ b/keyboards/meme/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Meme", "manufacturer": "Switchmod Keyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/meow48/keyboard.json b/keyboards/meow48/keyboard.json index 3bb78af116..7861555648 100644 --- a/keyboards/meow48/keyboard.json +++ b/keyboards/meow48/keyboard.json @@ -32,8 +32,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false, diff --git a/keyboards/meow65/keyboard.json b/keyboards/meow65/keyboard.json index 5870152ee0..40afbb0c8b 100644 --- a/keyboards/meow65/keyboard.json +++ b/keyboards/meow65/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/merge/iso_macro/keyboard.json b/keyboards/merge/iso_macro/keyboard.json index 1c6d905282..5fcfc6fcb1 100644 --- a/keyboards/merge/iso_macro/keyboard.json +++ b/keyboards/merge/iso_macro/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ISO Macro", "manufacturer": "Merge", - "url": "", "maintainer": "duoshock", "usb": { "vid": "0x4D65", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/merge/uc1/keyboard.json b/keyboards/merge/uc1/keyboard.json index 85e9b03c64..496b9a6b5f 100644 --- a/keyboards/merge/uc1/keyboard.json +++ b/keyboards/merge/uc1/keyboard.json @@ -32,8 +32,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/merge/um70/keyboard.json b/keyboards/merge/um70/keyboard.json index afb52d3d4f..7ebb61f7fe 100644 --- a/keyboards/merge/um70/keyboard.json +++ b/keyboards/merge/um70/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/merge/um80/keyboard.json b/keyboards/merge/um80/keyboard.json index ea233e8f1c..6024f6e485 100644 --- a/keyboards/merge/um80/keyboard.json +++ b/keyboards/merge/um80/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/mesa/mesa_tkl/keyboard.json b/keyboards/mesa/mesa_tkl/keyboard.json index 85d1c2b5a0..ac84dbf94f 100644 --- a/keyboards/mesa/mesa_tkl/keyboard.json +++ b/keyboards/mesa/mesa_tkl/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/meson/keyboard.json b/keyboards/meson/keyboard.json index 62640890ca..b931403769 100644 --- a/keyboards/meson/keyboard.json +++ b/keyboards/meson/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/metamechs/timberwolf/keyboard.json b/keyboards/metamechs/timberwolf/keyboard.json index 262022d2d6..6ccfdab449 100644 --- a/keyboards/metamechs/timberwolf/keyboard.json +++ b/keyboards/metamechs/timberwolf/keyboard.json @@ -14,8 +14,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/mexsistor/ludmila/keyboard.json b/keyboards/mexsistor/ludmila/keyboard.json index 71202208c5..61c4cca2ab 100644 --- a/keyboards/mexsistor/ludmila/keyboard.json +++ b/keyboards/mexsistor/ludmila/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ludmila Macropad", "manufacturer": "Kevin M.", - "url": "", "maintainer": "Kevin M.", "usb": { "vid": "0x69CC", diff --git a/keyboards/miiiw/blackio83/rev_0100/keyboard.json b/keyboards/miiiw/blackio83/rev_0100/keyboard.json index d3fb31d109..e5cf747537 100644 --- a/keyboards/miiiw/blackio83/rev_0100/keyboard.json +++ b/keyboards/miiiw/blackio83/rev_0100/keyboard.json @@ -7,8 +7,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "deferred_exec": true, "dip_switch": true, "extrakey": true, diff --git a/keyboards/mikeneko65/keyboard.json b/keyboards/mikeneko65/keyboard.json index 873bb7d042..1d1d50a796 100644 --- a/keyboards/mikeneko65/keyboard.json +++ b/keyboards/mikeneko65/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/miller/gm862/keyboard.json b/keyboards/miller/gm862/keyboard.json index b8c32cf16a..db08a580a9 100644 --- a/keyboards/miller/gm862/keyboard.json +++ b/keyboards/miller/gm862/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "GM862", "manufacturer": "MILLER", - "url": "", "maintainer": "MILLER", "usb": { "vid": "0x4B42", @@ -44,8 +43,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/millet/doksin/keyboard.json b/keyboards/millet/doksin/keyboard.json index 7a848662cd..a472eebc79 100644 --- a/keyboards/millet/doksin/keyboard.json +++ b/keyboards/millet/doksin/keyboard.json @@ -14,7 +14,6 @@ ] }, "processor": "atmega32u2", - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x1919", diff --git a/keyboards/millipad/keyboard.json b/keyboards/millipad/keyboard.json index 7230fa750b..d2761b8b1b 100644 --- a/keyboards/millipad/keyboard.json +++ b/keyboards/millipad/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/mincedshon/ecila/keyboard.json b/keyboards/mincedshon/ecila/keyboard.json index fe7173e34a..ca0a20568a 100644 --- a/keyboards/mincedshon/ecila/keyboard.json +++ b/keyboards/mincedshon/ecila/keyboard.json @@ -32,8 +32,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -45,7 +43,6 @@ "rows": ["E6", "B3", "B5", "B4", "D7"] }, "processor": "atmega32u4", - "url": "", "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/mini_elixivy/keyboard.json b/keyboards/mini_elixivy/keyboard.json index 2d45d70cf4..9f6bfb91c0 100644 --- a/keyboards/mini_elixivy/keyboard.json +++ b/keyboards/mini_elixivy/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/mini_ten_key_plus/keyboard.json b/keyboards/mini_ten_key_plus/keyboard.json index 10507fa6e5..e3b017a253 100644 --- a/keyboards/mini_ten_key_plus/keyboard.json +++ b/keyboards/mini_ten_key_plus/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/minimacro5/keyboard.json b/keyboards/minimacro5/keyboard.json index 32be6abd5f..033bc1e85a 100644 --- a/keyboards/minimacro5/keyboard.json +++ b/keyboards/minimacro5/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "miniMACRO5", "manufacturer": "leafcutterlabs", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xCEEB", @@ -39,8 +38,6 @@ "bootloader": "caterina", "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/minimon/bartlesplit/keyboard.json b/keyboards/minimon/bartlesplit/keyboard.json index 83f93560b6..6047d17645 100644 --- a/keyboards/minimon/bartlesplit/keyboard.json +++ b/keyboards/minimon/bartlesplit/keyboard.json @@ -4,8 +4,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/minimon/index_tab/keyboard.json b/keyboards/minimon/index_tab/keyboard.json index 14e4524114..0c594b42ac 100644 --- a/keyboards/minimon/index_tab/keyboard.json +++ b/keyboards/minimon/index_tab/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/mint60/keyboard.json b/keyboards/mint60/keyboard.json index c5bfe27365..1bb54aebd9 100644 --- a/keyboards/mint60/keyboard.json +++ b/keyboards/mint60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Mint60", "manufacturer": "Eucalyn", - "url": "", "maintainer": "eucalyn", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false, diff --git a/keyboards/misonoworks/chocolatebar/keyboard.json b/keyboards/misonoworks/chocolatebar/keyboard.json index cf34557bb1..75b10ae561 100644 --- a/keyboards/misonoworks/chocolatebar/keyboard.json +++ b/keyboards/misonoworks/chocolatebar/keyboard.json @@ -26,8 +26,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/misonoworks/karina/keyboard.json b/keyboards/misonoworks/karina/keyboard.json index 0d9d55d206..1266c07cea 100644 --- a/keyboards/misonoworks/karina/keyboard.json +++ b/keyboards/misonoworks/karina/keyboard.json @@ -29,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/misterknife/knife66/keyboard.json b/keyboards/misterknife/knife66/keyboard.json index 9e3d0c66b7..bfb25bb422 100644 --- a/keyboards/misterknife/knife66/keyboard.json +++ b/keyboards/misterknife/knife66/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Knife66", "manufacturer": "MisterKnife", - "url": "", "maintainer": "afewyards", "usb": { "vid": "0xAC11", @@ -33,8 +32,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/misterknife/knife66_iso/keyboard.json b/keyboards/misterknife/knife66_iso/keyboard.json index 88f8746109..f35609b3af 100644 --- a/keyboards/misterknife/knife66_iso/keyboard.json +++ b/keyboards/misterknife/knife66_iso/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Knife66 ISO", "manufacturer": "MisterKnife", - "url": "", "maintainer": "afewyards", "usb": { "vid": "0xAC11", @@ -33,8 +32,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/mitosis/keyboard.json b/keyboards/mitosis/keyboard.json index c69d1d30cd..310c0ebd1a 100644 --- a/keyboards/mitosis/keyboard.json +++ b/keyboards/mitosis/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Mitosis", "manufacturer": "Unknown", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/miuni32/keyboard.json b/keyboards/miuni32/keyboard.json index 0b52b058fa..1ff7d1a39a 100644 --- a/keyboards/miuni32/keyboard.json +++ b/keyboards/miuni32/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Miuni32", "manufacturer": "Bigtuna.io", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -30,7 +29,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/mk65/keyboard.json b/keyboards/mk65/keyboard.json index 9135deaf19..55bfdc0a34 100644 --- a/keyboards/mk65/keyboard.json +++ b/keyboards/mk65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MK-65", "manufacturer": "mangooo", - "url": "", "maintainer": "DeskDaily", "usb": { "vid": "0x5004", @@ -27,17 +26,13 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgblight": true }, "rgblight": { "led_count": 7, - "hue_steps": 8, "saturation_steps": 8, "brightness_steps": 8, - "max_brightness": 255, "sleep": true, "animations": { "alternating": true, diff --git a/keyboards/ml/gas75/keyboard.json b/keyboards/ml/gas75/keyboard.json index 25289db9c8..b7736884fc 100644 --- a/keyboards/ml/gas75/keyboard.json +++ b/keyboards/ml/gas75/keyboard.json @@ -58,8 +58,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/mlego/m48/rev1/keyboard.json b/keyboards/mlego/m48/rev1/keyboard.json index efd3888295..72e0ca383f 100644 --- a/keyboards/mlego/m48/rev1/keyboard.json +++ b/keyboards/mlego/m48/rev1/keyboard.json @@ -5,8 +5,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/mlego/m60/rev1/keyboard.json b/keyboards/mlego/m60/rev1/keyboard.json index 126338b0c8..36bfcb15b6 100644 --- a/keyboards/mlego/m60/rev1/keyboard.json +++ b/keyboards/mlego/m60/rev1/keyboard.json @@ -5,8 +5,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/mlego/m65/rev1/keyboard.json b/keyboards/mlego/m65/rev1/keyboard.json index 2f77137eec..0e69b96a19 100644 --- a/keyboards/mlego/m65/rev1/keyboard.json +++ b/keyboards/mlego/m65/rev1/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, @@ -42,7 +40,6 @@ "static_gradient": true, "twinkle": true }, - "hue_steps": 8, "layers": { "enabled": true }, diff --git a/keyboards/mlego/m65/rev2/keyboard.json b/keyboards/mlego/m65/rev2/keyboard.json index 0014767309..f0aa70e90b 100644 --- a/keyboards/mlego/m65/rev2/keyboard.json +++ b/keyboards/mlego/m65/rev2/keyboard.json @@ -12,7 +12,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, @@ -41,7 +40,6 @@ "static_gradient": true, "twinkle": true }, - "hue_steps": 8, "layers": { "enabled": true }, diff --git a/keyboards/mlego/m65/rev3/keyboard.json b/keyboards/mlego/m65/rev3/keyboard.json index 4b7980b63b..21efcc027b 100644 --- a/keyboards/mlego/m65/rev3/keyboard.json +++ b/keyboards/mlego/m65/rev3/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, @@ -42,7 +40,6 @@ "static_gradient": true, "twinkle": true }, - "hue_steps": 8, "layers": { "enabled": true }, diff --git a/keyboards/mlego/m65/rev4/keyboard.json b/keyboards/mlego/m65/rev4/keyboard.json index ab2a708ba8..58c2bad7bf 100644 --- a/keyboards/mlego/m65/rev4/keyboard.json +++ b/keyboards/mlego/m65/rev4/keyboard.json @@ -12,7 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "encoder": true, "extrakey": true, @@ -44,7 +43,6 @@ "static_gradient": true, "twinkle": true }, - "hue_steps": 8, "layers": { "enabled": true }, diff --git a/keyboards/mmkzoo65/keyboard.json b/keyboards/mmkzoo65/keyboard.json index f023f34ef0..fdd5f50b60 100644 --- a/keyboards/mmkzoo65/keyboard.json +++ b/keyboards/mmkzoo65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MMKZOO65", "manufacturer": "MWStudio", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x7BA1", @@ -12,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/mntre/keyboard.json b/keyboards/mntre/keyboard.json index 26dc66dc48..41e6e618a6 100644 --- a/keyboards/mntre/keyboard.json +++ b/keyboards/mntre/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false, diff --git a/keyboards/mode/m256ws/keyboard.json b/keyboards/mode/m256ws/keyboard.json index 820ed536c2..0574be8406 100644 --- a/keyboards/mode/m256ws/keyboard.json +++ b/keyboards/mode/m256ws/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -36,7 +34,6 @@ "twinkle": true } }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x5753", diff --git a/keyboards/mode/m60h/keyboard.json b/keyboards/mode/m60h/keyboard.json index b33ea3a9c3..39cbdb473f 100644 --- a/keyboards/mode/m60h/keyboard.json +++ b/keyboards/mode/m60h/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, @@ -39,7 +37,6 @@ "max_brightness": 120, "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0062", diff --git a/keyboards/mode/m60h_f/keyboard.json b/keyboards/mode/m60h_f/keyboard.json index 014472bc68..f04b599d84 100644 --- a/keyboards/mode/m60h_f/keyboard.json +++ b/keyboards/mode/m60h_f/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -39,7 +37,6 @@ "max_brightness": 120, "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0061", diff --git a/keyboards/mode/m60s/keyboard.json b/keyboards/mode/m60s/keyboard.json index 6a03219427..993af9b798 100644 --- a/keyboards/mode/m60s/keyboard.json +++ b/keyboards/mode/m60s/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, @@ -39,7 +37,6 @@ "max_brightness": 120, "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0060", diff --git a/keyboards/mode/m65ha_alpha/keyboard.json b/keyboards/mode/m65ha_alpha/keyboard.json index cc5271b5c2..7794d16396 100644 --- a/keyboards/mode/m65ha_alpha/keyboard.json +++ b/keyboards/mode/m65ha_alpha/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "SixtyFive HA", "manufacturer": "Mode", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x00DE", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/mode/m65hi_alpha/keyboard.json b/keyboards/mode/m65hi_alpha/keyboard.json index c0c843d4de..4d3bf4bf0a 100644 --- a/keyboards/mode/m65hi_alpha/keyboard.json +++ b/keyboards/mode/m65hi_alpha/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "SixtyFive HI", "manufacturer": "Mode", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x00DE", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/mode/m65s/keyboard.json b/keyboards/mode/m65s/keyboard.json index ae8df282ad..29221f27d5 100644 --- a/keyboards/mode/m65s/keyboard.json +++ b/keyboards/mode/m65s/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "SixtyFive S", "manufacturer": "Mode", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x00DE", @@ -17,8 +16,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/mode/m75h/keyboard.json b/keyboards/mode/m75h/keyboard.json index 5d4d8249e6..6e6c7b4b96 100644 --- a/keyboards/mode/m75h/keyboard.json +++ b/keyboards/mode/m75h/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "M75H", "manufacturer": "Mode", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x00DE", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/mode/m75s/keyboard.json b/keyboards/mode/m75s/keyboard.json index aff38dc622..822d31aebc 100644 --- a/keyboards/mode/m75s/keyboard.json +++ b/keyboards/mode/m75s/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "75S", "manufacturer": "Mode", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x00DE", @@ -14,8 +13,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/mode/m80v1/m80h/keyboard.json b/keyboards/mode/m80v1/m80h/keyboard.json index dcebcb6d49..1e681e7f5c 100644 --- a/keyboards/mode/m80v1/m80h/keyboard.json +++ b/keyboards/mode/m80v1/m80h/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Eighty", "manufacturer": "Mode", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x00DE", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/mode/m80v1/m80s/keyboard.json b/keyboards/mode/m80v1/m80s/keyboard.json index 25bfd3c70a..5e88ff67bb 100644 --- a/keyboards/mode/m80v1/m80s/keyboard.json +++ b/keyboards/mode/m80v1/m80s/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Eighty", "manufacturer": "Mode", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x00DE", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/mode/m80v2/m80v2h/keyboard.json b/keyboards/mode/m80v2/m80v2h/keyboard.json index 1844e0775c..b4bd8e124e 100644 --- a/keyboards/mode/m80v2/m80v2h/keyboard.json +++ b/keyboards/mode/m80v2/m80v2h/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/mode/m80v2/m80v2s/keyboard.json b/keyboards/mode/m80v2/m80v2s/keyboard.json index d8b4c8ee85..9460ab7308 100644 --- a/keyboards/mode/m80v2/m80v2s/keyboard.json +++ b/keyboards/mode/m80v2/m80v2s/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/mokey/ginkgo65/keyboard.json b/keyboards/mokey/ginkgo65/keyboard.json index 311d91f2d3..7279f82cc4 100644 --- a/keyboards/mokey/ginkgo65/keyboard.json +++ b/keyboards/mokey/ginkgo65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ginkgo 65", "manufacturer": "Mokey", - "url": "", "maintainer": "rhmokey", "usb": { "vid": "0x6653", @@ -14,8 +13,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/mokey/ginkgo65hot/keyboard.json b/keyboards/mokey/ginkgo65hot/keyboard.json index 1674607310..f39c490b2f 100644 --- a/keyboards/mokey/ginkgo65hot/keyboard.json +++ b/keyboards/mokey/ginkgo65hot/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ginkgo65hot", "manufacturer": "Mokey", - "url": "", "maintainer": "mokey", "usb": { "vid": "0x6653", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/mokey/ibis80/keyboard.json b/keyboards/mokey/ibis80/keyboard.json index d6cd985d01..a9971d2392 100644 --- a/keyboards/mokey/ibis80/keyboard.json +++ b/keyboards/mokey/ibis80/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ibis 80", "manufacturer": "Mokey", - "url": "", "maintainer": "Runheme", "usb": { "vid": "0x6653", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/mokey/luckycat70/keyboard.json b/keyboards/mokey/luckycat70/keyboard.json index 2f9ab6a1e5..e714454972 100644 --- a/keyboards/mokey/luckycat70/keyboard.json +++ b/keyboards/mokey/luckycat70/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Lucky Cat 70", "manufacturer": "qmk", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x6653", @@ -13,8 +12,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": false, "rgblight": true }, diff --git a/keyboards/mokey/mokey12x2/keyboard.json b/keyboards/mokey/mokey12x2/keyboard.json index 6f22429e72..489856a264 100644 --- a/keyboards/mokey/mokey12x2/keyboard.json +++ b/keyboards/mokey/mokey12x2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Mokey12x2", "manufacturer": "Mokey", - "url": "", "maintainer": "Mokey", "development_board": "bluepill", "diode_direction": "COL2ROW", diff --git a/keyboards/mokey/mokey63/keyboard.json b/keyboards/mokey/mokey63/keyboard.json index bebc600510..88b7ce3f7f 100644 --- a/keyboards/mokey/mokey63/keyboard.json +++ b/keyboards/mokey/mokey63/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Mokey63", "manufacturer": "Mokey", - "url": "", "maintainer": "mokey", "usb": { "vid": "0x6653", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/mokey/mokey64/keyboard.json b/keyboards/mokey/mokey64/keyboard.json index 0234cf6292..62b6fc2ac1 100644 --- a/keyboards/mokey/mokey64/keyboard.json +++ b/keyboards/mokey/mokey64/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Mokey64", "manufacturer": "Mokey", - "url": "", "maintainer": "mokey", "usb": { "vid": "0x6653", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/mokey/xox70/keyboard.json b/keyboards/mokey/xox70/keyboard.json index 4f8f5439f5..d746a23471 100644 --- a/keyboards/mokey/xox70/keyboard.json +++ b/keyboards/mokey/xox70/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XOX 70", "manufacturer": "Mokey", - "url": "", "maintainer": "Mokey", "usb": { "vid": "0x6653", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/mokey/xox70hot/keyboard.json b/keyboards/mokey/xox70hot/keyboard.json index 7d5f338b62..b2bf671020 100644 --- a/keyboards/mokey/xox70hot/keyboard.json +++ b/keyboards/mokey/xox70hot/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XOX 70 Hotswap", "manufacturer": "Mokey", - "url": "", "maintainer": "rhmokey", "usb": { "vid": "0x6653", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/moky/moky67/keyboard.json b/keyboards/moky/moky67/keyboard.json index 8737790b69..869dfc3389 100644 --- a/keyboards/moky/moky67/keyboard.json +++ b/keyboards/moky/moky67/keyboard.json @@ -1,7 +1,6 @@ { "manufacturer": "moky", "keyboard_name": "moky67", - "url": "", "processor": "WB32FQ95", "bootloader": "wb32-dfu", "usb": { diff --git a/keyboards/moky/moky88/keyboard.json b/keyboards/moky/moky88/keyboard.json index 38ed4dbd28..1db4c5247c 100644 --- a/keyboards/moky/moky88/keyboard.json +++ b/keyboards/moky/moky88/keyboard.json @@ -1,7 +1,6 @@ { "manufacturer": "moky", "keyboard_name": "moky88", - "url": "", "processor": "WB32FQ95", "bootloader": "wb32-dfu", "usb": { diff --git a/keyboards/momoka_ergo/keyboard.json b/keyboards/momoka_ergo/keyboard.json index a24430ee82..3b2ba6664f 100644 --- a/keyboards/momoka_ergo/keyboard.json +++ b/keyboards/momoka_ergo/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Momoka Ergo", "manufacturer": "StefanGrindelwald", - "url": "", "maintainer": "StefanGrindelwald", "usb": { "vid": "0x4F4D", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/momokai/aurora/keyboard.json b/keyboards/momokai/aurora/keyboard.json index 84ecbdeb4a..1c4bc8e12f 100644 --- a/keyboards/momokai/aurora/keyboard.json +++ b/keyboards/momokai/aurora/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -24,7 +22,6 @@ ] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x0009", @@ -45,7 +42,6 @@ "rgb_matrix": { "default": { "animation": "solid_color", - "hue": 0, "sat": 0, "val": 200 }, diff --git a/keyboards/momokai/tap_duo/keyboard.json b/keyboards/momokai/tap_duo/keyboard.json index f5351dd031..1d5302985c 100644 --- a/keyboards/momokai/tap_duo/keyboard.json +++ b/keyboards/momokai/tap_duo/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Tap Duo", "manufacturer": "Momokai", - "url": "", "maintainer": "peepeetee", "usb": { "vid": "0x69F9", @@ -14,7 +13,6 @@ "rgb_matrix": { "default": { "animation": "solid_color", - "hue": 0, "sat": 0, "val": 200 }, @@ -52,8 +50,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/momokai/tap_trio/keyboard.json b/keyboards/momokai/tap_trio/keyboard.json index f61de25c10..41da5585f6 100644 --- a/keyboards/momokai/tap_trio/keyboard.json +++ b/keyboards/momokai/tap_trio/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Tap Trio", "manufacturer": "Momokai", - "url": "", "maintainer": "peepeetee", "usb": { "vid": "0x69F9", @@ -14,7 +13,6 @@ "rgb_matrix": { "default": { "animation": "solid_color", - "hue": 0, "sat": 0, "val": 200 }, @@ -52,8 +50,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/monarch/keyboard.json b/keyboards/monarch/keyboard.json index c42db64a26..b7237ec613 100644 --- a/keyboards/monarch/keyboard.json +++ b/keyboards/monarch/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Monarch", "manufacturer": "DoCallMeKing", - "url": "", "maintainer": "Ramon Imbao", "usb": { "vid": "0x4011", diff --git a/keyboards/monoflex60/keyboard.json b/keyboards/monoflex60/keyboard.json index 4c6fca7524..0becab2b63 100644 --- a/keyboards/monoflex60/keyboard.json +++ b/keyboards/monoflex60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Monoflex 60", "manufacturer": "SantiGo Customs", - "url": "", "maintainer": "key10iq", "usb": { "vid": "0xDEB4", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/monsgeek/m1/keyboard.json b/keyboards/monsgeek/m1/keyboard.json index 1551b2a113..4cca5c8686 100644 --- a/keyboards/monsgeek/m1/keyboard.json +++ b/keyboards/monsgeek/m1/keyboard.json @@ -15,8 +15,6 @@ "bootmagic": true, "mousekey": false, "extrakey": true, - "console": false, - "command": false, "nkro": true, "encoder": true, "rgb_matrix": true diff --git a/keyboards/monsgeek/m1/m1.c b/keyboards/monsgeek/m1/m1.c index 60479ab801..2f7365e562 100644 --- a/keyboards/monsgeek/m1/m1.c +++ b/keyboards/monsgeek/m1/m1.c @@ -190,7 +190,7 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { set_single_persistent_default_layer(MAC_B); layer_state_set(1<<MAC_B); keymap_config.no_gui = 0; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } return false; case QK_RGB_MATRIX_TOGGLE: diff --git a/keyboards/monsgeek/m3/keyboard.json b/keyboards/monsgeek/m3/keyboard.json index cb7c3abf21..9d2ea18c9d 100644 --- a/keyboards/monsgeek/m3/keyboard.json +++ b/keyboards/monsgeek/m3/keyboard.json @@ -21,8 +21,6 @@ "features": { "bootmagic": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/monsgeek/m3/m3.c b/keyboards/monsgeek/m3/m3.c index 4dd9a55f3c..bf5e038b3d 100644 --- a/keyboards/monsgeek/m3/m3.c +++ b/keyboards/monsgeek/m3/m3.c @@ -163,7 +163,7 @@ bool process_record_kb(uint16_t keycode, keyrecord_t* record) { if (record->event.pressed) { set_single_persistent_default_layer(MAC_B); keymap_config.no_gui = 0; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } return false; case GU_TOGG: diff --git a/keyboards/monsgeek/m5/keyboard.json b/keyboards/monsgeek/m5/keyboard.json index 3927181e2d..92d6add3fe 100644 --- a/keyboards/monsgeek/m5/keyboard.json +++ b/keyboards/monsgeek/m5/keyboard.json @@ -15,8 +15,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/monsgeek/m6/keyboard.json b/keyboards/monsgeek/m6/keyboard.json index 12d7def4c7..afe38eb0da 100644 --- a/keyboards/monsgeek/m6/keyboard.json +++ b/keyboards/monsgeek/m6/keyboard.json @@ -15,8 +15,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/monstargear/xo87/rgb/keyboard.json b/keyboards/monstargear/xo87/rgb/keyboard.json index 5571b91990..9ee83deb00 100644 --- a/keyboards/monstargear/xo87/rgb/keyboard.json +++ b/keyboards/monstargear/xo87/rgb/keyboard.json @@ -67,7 +67,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/monstargear/xo87/solderable/keyboard.json b/keyboards/monstargear/xo87/solderable/keyboard.json index a230649b49..c825b22ac1 100644 --- a/keyboards/monstargear/xo87/solderable/keyboard.json +++ b/keyboards/monstargear/xo87/solderable/keyboard.json @@ -12,7 +12,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/moondrop/dash75/info.json b/keyboards/moondrop/dash75/info.json index 59f956815e..39772dc689 100644 --- a/keyboards/moondrop/dash75/info.json +++ b/keyboards/moondrop/dash75/info.json @@ -8,8 +8,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/morizon/keyboard.json b/keyboards/morizon/keyboard.json index 73097dd113..13999e5753 100644 --- a/keyboards/morizon/keyboard.json +++ b/keyboards/morizon/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/mothwing/keyboard.json b/keyboards/mothwing/keyboard.json index c52d9df00e..5a584c7cb2 100644 --- a/keyboards/mothwing/keyboard.json +++ b/keyboards/mothwing/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "mothwing", "manufacturer": "Luana co.ltd.", - "url": "", "maintainer": "tan-t", "usb": { "vid": "0x4D77", diff --git a/keyboards/mountainblocks/mb17/keyboard.json b/keyboards/mountainblocks/mb17/keyboard.json index 9e9bb98406..9103f7775f 100644 --- a/keyboards/mountainblocks/mb17/keyboard.json +++ b/keyboards/mountainblocks/mb17/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MB17", "manufacturer": "Mountainblocks", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4D42", diff --git a/keyboards/mountainmechdesigns/teton_78/keyboard.json b/keyboards/mountainmechdesigns/teton_78/keyboard.json index d6f5ce9cd8..ba7cfdd2c3 100644 --- a/keyboards/mountainmechdesigns/teton_78/keyboard.json +++ b/keyboards/mountainmechdesigns/teton_78/keyboard.json @@ -9,8 +9,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -20,7 +18,6 @@ "rows": ["D0", "D1", "D2", "D3", "D5"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x3349", diff --git a/keyboards/ms_sculpt/keyboard.json b/keyboards/ms_sculpt/keyboard.json index 5353a0df7e..2193c6a870 100644 --- a/keyboards/ms_sculpt/keyboard.json +++ b/keyboards/ms_sculpt/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false @@ -22,7 +20,6 @@ "io_delay": 5 }, "debounce": 3, - "url": "", "usb": { "polling_interval": 1, "device_version": "1.0.0", diff --git a/keyboards/mss_studio/m63_rgb/keyboard.json b/keyboards/mss_studio/m63_rgb/keyboard.json index 1b1745bc20..16a4c5295f 100644 --- a/keyboards/mss_studio/m63_rgb/keyboard.json +++ b/keyboards/mss_studio/m63_rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "M63 RGB", "manufacturer": "Mss Studio", - "url": "", "maintainer": "HorrorTroll", "usb": { "vid": "0x4D4B", @@ -62,8 +61,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/mss_studio/m64_rgb/keyboard.json b/keyboards/mss_studio/m64_rgb/keyboard.json index eb1cabb305..5b53cd58c7 100644 --- a/keyboards/mss_studio/m64_rgb/keyboard.json +++ b/keyboards/mss_studio/m64_rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "M64 RGB", "manufacturer": "Mss Studio", - "url": "", "maintainer": "HorrorTroll", "usb": { "vid": "0x4D4B", @@ -62,8 +61,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/mt/blocked65/keyboard.json b/keyboards/mt/blocked65/keyboard.json index 9a0ce52043..0f66b9f9cc 100644 --- a/keyboards/mt/blocked65/keyboard.json +++ b/keyboards/mt/blocked65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Blocked65", "manufacturer": "Dou", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5746", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/mt/mt40/keyboard.json b/keyboards/mt/mt40/keyboard.json index d1700389f7..924c33a4fb 100644 --- a/keyboards/mt/mt40/keyboard.json +++ b/keyboards/mt/mt40/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MT40", "manufacturer": "ThomasDehaeze", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x20A0", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/mt/mt64rgb/keyboard.json b/keyboards/mt/mt64rgb/keyboard.json index 451be59f8f..57e827f1e3 100644 --- a/keyboards/mt/mt64rgb/keyboard.json +++ b/keyboards/mt/mt64rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MT64RGB", "manufacturer": "MT", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4D54", @@ -139,8 +138,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/mt/mt84/keyboard.json b/keyboards/mt/mt84/keyboard.json index 26f66b31db..03926e8a05 100644 --- a/keyboards/mt/mt84/keyboard.json +++ b/keyboards/mt/mt84/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MT84", "manufacturer": "MT", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4D54", @@ -156,8 +155,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/mt/mt980/keyboard.json b/keyboards/mt/mt980/keyboard.json index 2fa17224cb..199231f7d8 100644 --- a/keyboards/mt/mt980/keyboard.json +++ b/keyboards/mt/mt980/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": true, diff --git a/keyboards/mt/split75/keyboard.json b/keyboards/mt/split75/keyboard.json index c13fa28b80..611e25bb6f 100644 --- a/keyboards/mt/split75/keyboard.json +++ b/keyboards/mt/split75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Split75", "manufacturer": "YMDK", - "url": "", "maintainer": "Michael L. Walker", "usb": { "vid": "0x594D", diff --git a/keyboards/mtbkeys/mtb60/hotswap/keyboard.json b/keyboards/mtbkeys/mtb60/hotswap/keyboard.json index cca7bb726a..87326a7145 100644 --- a/keyboards/mtbkeys/mtb60/hotswap/keyboard.json +++ b/keyboards/mtbkeys/mtb60/hotswap/keyboard.json @@ -34,8 +34,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/mtbkeys/mtb60/solder/keyboard.json b/keyboards/mtbkeys/mtb60/solder/keyboard.json index e128981626..59ab34b420 100644 --- a/keyboards/mtbkeys/mtb60/solder/keyboard.json +++ b/keyboards/mtbkeys/mtb60/solder/keyboard.json @@ -34,8 +34,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/murcielago/rev1/keyboard.json b/keyboards/murcielago/rev1/keyboard.json index 4d3a82ef2c..88203e67fb 100644 --- a/keyboards/murcielago/rev1/keyboard.json +++ b/keyboards/murcielago/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Murci\u00e9lago", "manufacturer": "elagil", - "url": "", "maintainer": "elagil", "usb": { "vid": "0x6166", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/mwstudio/alicekk/keyboard.json b/keyboards/mwstudio/alicekk/keyboard.json index 141be9909e..355437f953 100644 --- a/keyboards/mwstudio/alicekk/keyboard.json +++ b/keyboards/mwstudio/alicekk/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/mwstudio/mmk_3/keyboard.json b/keyboards/mwstudio/mmk_3/keyboard.json index c63bd69f62..b812cb7e3b 100644 --- a/keyboards/mwstudio/mmk_3/keyboard.json +++ b/keyboards/mwstudio/mmk_3/keyboard.json @@ -31,7 +31,6 @@ "hue_steps": 10, "led_count": 5 }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x3001", diff --git a/keyboards/mwstudio/mw65_black/keyboard.json b/keyboards/mwstudio/mw65_black/keyboard.json index 8955cf9688..8c542ec042 100644 --- a/keyboards/mwstudio/mw65_black/keyboard.json +++ b/keyboards/mwstudio/mw65_black/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MW65 Black", "manufacturer": "MWStudio", - "url": "", "maintainer": "TW59420", "usb": { "vid": "0x7BA1", @@ -18,8 +17,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/mwstudio/mw65_rgb/keyboard.json b/keyboards/mwstudio/mw65_rgb/keyboard.json index f1a8190948..ce8e3f978c 100644 --- a/keyboards/mwstudio/mw65_rgb/keyboard.json +++ b/keyboards/mwstudio/mw65_rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MW65 RGB", "manufacturer": "MWStudio", - "url": "", "maintainer": "TW59420", "usb": { "vid": "0x7BA1", @@ -59,8 +58,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/mwstudio/mw660/keyboard.json b/keyboards/mwstudio/mw660/keyboard.json index fdbd7564a7..bf0cd6781c 100644 --- a/keyboards/mwstudio/mw660/keyboard.json +++ b/keyboards/mwstudio/mw660/keyboard.json @@ -5,8 +5,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -24,7 +22,6 @@ }, "processor": "STM32F103", "bootloader": "stm32duino", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x6601", diff --git a/keyboards/mwstudio/mw75/keyboard.json b/keyboards/mwstudio/mw75/keyboard.json index d9e540bca4..489e711c5b 100644 --- a/keyboards/mwstudio/mw75/keyboard.json +++ b/keyboards/mwstudio/mw75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MW75", "manufacturer": "MWStudio", - "url": "", "maintainer": "TW59420", "usb": { "vid": "0x7BA1", @@ -56,8 +55,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/mwstudio/mw75r2/keyboard.json b/keyboards/mwstudio/mw75r2/keyboard.json index ae227830e5..10c6a226ca 100644 --- a/keyboards/mwstudio/mw75r2/keyboard.json +++ b/keyboards/mwstudio/mw75r2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MW75R2", "manufacturer": "MWStudio", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x7BA1", @@ -44,8 +43,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/mwstudio/mw80/keyboard.json b/keyboards/mwstudio/mw80/keyboard.json index 829e97591c..327afd3155 100644 --- a/keyboards/mwstudio/mw80/keyboard.json +++ b/keyboards/mwstudio/mw80/keyboard.json @@ -5,8 +5,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -18,7 +16,6 @@ }, "processor": "STM32F103", "bootloader": "stm32duino", - "url": "", "indicators": { "caps_lock": "A0" }, @@ -29,8 +26,6 @@ "rgblight": { "led_count": 16, "hue_steps": 10, - "saturation_steps": 17, - "brightness_steps": 17, "animations": { "alternating": true, "breathing": true, diff --git a/keyboards/mxss/keyboard.json b/keyboards/mxss/keyboard.json index defa0ae6b7..1c8080fdbe 100644 --- a/keyboards/mxss/keyboard.json +++ b/keyboards/mxss/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/mykeyclub/jris65/hotswap/keyboard.json b/keyboards/mykeyclub/jris65/hotswap/keyboard.json index 3ed56136d1..134edbf4f0 100644 --- a/keyboards/mykeyclub/jris65/hotswap/keyboard.json +++ b/keyboards/mykeyclub/jris65/hotswap/keyboard.json @@ -15,7 +15,6 @@ "rows": ["F7", "F6", "F5", "B2", "F4"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "0.1.0", "pid": "0x4953", diff --git a/keyboards/mysticworks/wyvern/keyboard.json b/keyboards/mysticworks/wyvern/keyboard.json index 77f2aa19bd..ad2657813b 100644 --- a/keyboards/mysticworks/wyvern/keyboard.json +++ b/keyboards/mysticworks/wyvern/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/nacly/sodium42/keyboard.json b/keyboards/nacly/sodium42/keyboard.json index 2db83408ac..a1d7b65ab3 100644 --- a/keyboards/nacly/sodium42/keyboard.json +++ b/keyboards/nacly/sodium42/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/nacly/sodium50/keyboard.json b/keyboards/nacly/sodium50/keyboard.json index b9448c8217..e41495755f 100644 --- a/keyboards/nacly/sodium50/keyboard.json +++ b/keyboards/nacly/sodium50/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/nacly/sodium62/keyboard.json b/keyboards/nacly/sodium62/keyboard.json index 904fa9568a..ab16bf45fa 100644 --- a/keyboards/nacly/sodium62/keyboard.json +++ b/keyboards/nacly/sodium62/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/nacly/splitreus62/keyboard.json b/keyboards/nacly/splitreus62/keyboard.json index a3b1544b9a..d356578690 100644 --- a/keyboards/nacly/splitreus62/keyboard.json +++ b/keyboards/nacly/splitreus62/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Splitreus62", "manufacturer": "NaCly", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xBEEF", @@ -11,7 +10,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/nacly/ua62/keyboard.json b/keyboards/nacly/ua62/keyboard.json index 43f2e9e662..0bf01308f5 100644 --- a/keyboards/nacly/ua62/keyboard.json +++ b/keyboards/nacly/ua62/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "UA62", "manufacturer": "NaCly", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xBEEF", diff --git a/keyboards/navi60/keyboard.json b/keyboards/navi60/keyboard.json index 42c3e5da1d..47983e3d19 100644 --- a/keyboards/navi60/keyboard.json +++ b/keyboards/navi60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Navi60", "manufacturer": "Navi60", - "url": "", "maintainer": "DeskDaily", "usb": { "vid": "0x5001", @@ -19,8 +18,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true }, "layouts": { diff --git a/keyboards/ncc1701kb/keyboard.json b/keyboards/ncc1701kb/keyboard.json index f30b85f47a..f939b1ac35 100644 --- a/keyboards/ncc1701kb/keyboard.json +++ b/keyboards/ncc1701kb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NCC-1701-KB", "manufacturer": "J2L Designs", - "url": "", "maintainer": "jessel92", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/neito/keyboard.json b/keyboards/neito/keyboard.json index d79ab68508..2a5f3cecd2 100644 --- a/keyboards/neito/keyboard.json +++ b/keyboards/neito/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/nek_type_a/keyboard.json b/keyboards/nek_type_a/keyboard.json index 39bad11a18..a99a6b0301 100644 --- a/keyboards/nek_type_a/keyboard.json +++ b/keyboards/nek_type_a/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NEK Type A", "manufacturer": "miker", - "url": "", "maintainer": "ecopoesis", "usb": { "vid": "0xFEED", diff --git a/keyboards/nemui/keyboard.json b/keyboards/nemui/keyboard.json index fb2adb6ae4..5d607ee61e 100644 --- a/keyboards/nemui/keyboard.json +++ b/keyboards/nemui/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Nemui", "manufacturer": "Bachoo", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x6400", diff --git a/keyboards/neokeys/g67/element_hs/keyboard.json b/keyboards/neokeys/g67/element_hs/keyboard.json index f477c33d6a..0fadcc283a 100644 --- a/keyboards/neokeys/g67/element_hs/keyboard.json +++ b/keyboards/neokeys/g67/element_hs/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Element G67 Hotswap", "manufacturer": "NEO Keys", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4E4B", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "key_lock": true, "mousekey": true, diff --git a/keyboards/neokeys/g67/hotswap/keyboard.json b/keyboards/neokeys/g67/hotswap/keyboard.json index 937e802fa0..dc9a6748ce 100644 --- a/keyboards/neokeys/g67/hotswap/keyboard.json +++ b/keyboards/neokeys/g67/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Palette G67 Hotswap", "manufacturer": "NEO Keys", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4E4B", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "key_lock": true, "mousekey": true, diff --git a/keyboards/neokeys/g67/soldered/keyboard.json b/keyboards/neokeys/g67/soldered/keyboard.json index 541f07ee09..e3242caa57 100644 --- a/keyboards/neokeys/g67/soldered/keyboard.json +++ b/keyboards/neokeys/g67/soldered/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Palette G67 Soldered", "manufacturer": "NEO Keys", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4E4B", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/neson_design/700e/keyboard.json b/keyboards/neson_design/700e/keyboard.json index 64a18f436b..4cd7de0d81 100644 --- a/keyboards/neson_design/700e/keyboard.json +++ b/keyboards/neson_design/700e/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "700E", "manufacturer": "Neson Design", - "url": "", "maintainer": "yulei", "usb": { "vid": "0x4E65", diff --git a/keyboards/neson_design/810e/board.h b/keyboards/neson_design/810e/board.h new file mode 100644 index 0000000000..681350a0ea --- /dev/null +++ b/keyboards/neson_design/810e/board.h @@ -0,0 +1,8 @@ +// Copyright 2024 astro +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/neson_design/810e/keyboard.json b/keyboards/neson_design/810e/keyboard.json index 2c62eb1f88..ab52c1539e 100644 --- a/keyboards/neson_design/810e/keyboard.json +++ b/keyboards/neson_design/810e/keyboard.json @@ -19,7 +19,6 @@ "rows": ["C13", "C14", "A6", "A7", "A5"] }, "processor": "STM32F411", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x810E", diff --git a/keyboards/neson_design/n6/keyboard.json b/keyboards/neson_design/n6/keyboard.json index 66e6fb740c..9f7d3fb1c0 100644 --- a/keyboards/neson_design/n6/keyboard.json +++ b/keyboards/neson_design/n6/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "N6", "manufacturer": "Neson Design", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4E65", diff --git a/keyboards/neson_design/nico/keyboard.json b/keyboards/neson_design/nico/keyboard.json index 477ac3ba7c..a16e5e7d62 100644 --- a/keyboards/neson_design/nico/keyboard.json +++ b/keyboards/neson_design/nico/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -27,7 +25,6 @@ "rgblight": { "led_count": 5 }, - "url": "", "usb": { "device_version": "0.0.1", "no_startup_check": true, diff --git a/keyboards/newgame40/keyboard.json b/keyboards/newgame40/keyboard.json index 063260b99f..ad59f2bcd0 100644 --- a/keyboards/newgame40/keyboard.json +++ b/keyboards/newgame40/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NEWGAME40", "manufacturer": "GoTakigawa", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/nibell/micropad4x4/keyboard.json b/keyboards/nibell/micropad4x4/keyboard.json index b992f501cf..0305412f8c 100644 --- a/keyboards/nibell/micropad4x4/keyboard.json +++ b/keyboards/nibell/micropad4x4/keyboard.json @@ -15,7 +15,6 @@ "rows": ["GP10", "GP11", "GP12", "GP13"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0xFEED", diff --git a/keyboards/nibiria/stream15/keyboard.json b/keyboards/nibiria/stream15/keyboard.json index 9daeef7cf9..704ddda490 100644 --- a/keyboards/nibiria/stream15/keyboard.json +++ b/keyboards/nibiria/stream15/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Stream15", "manufacturer": "Nibiria", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4E49", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/nightingale_studios/hailey/keyboard.json b/keyboards/nightingale_studios/hailey/keyboard.json index f8c2455958..fbd2cf2a2f 100644 --- a/keyboards/nightingale_studios/hailey/keyboard.json +++ b/keyboards/nightingale_studios/hailey/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/nightly_boards/adellein/keyboard.json b/keyboards/nightly_boards/adellein/keyboard.json index 3f873ba5f5..7e75e0474a 100644 --- a/keyboards/nightly_boards/adellein/keyboard.json +++ b/keyboards/nightly_boards/adellein/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Adellein", "manufacturer": "Neil Brian Ramirez", - "url": "", "maintainer": "Neil Brian Ramirez", "usb": { "vid": "0xD812", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/nightly_boards/alter/rev1/keyboard.json b/keyboards/nightly_boards/alter/rev1/keyboard.json index e02e7e5b1b..ed6b2224a2 100644 --- a/keyboards/nightly_boards/alter/rev1/keyboard.json +++ b/keyboards/nightly_boards/alter/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Alter", "manufacturer": "Neil Brian Ramirez", - "url": "", "maintainer": "Neil Brian Ramirez", "usb": { "vid": "0x0717", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/nightly_boards/alter_lite/keyboard.json b/keyboards/nightly_boards/alter_lite/keyboard.json index d06dd3aacd..df8dfca7f7 100644 --- a/keyboards/nightly_boards/alter_lite/keyboard.json +++ b/keyboards/nightly_boards/alter_lite/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Alter Lite", "manufacturer": "DeskDaily", - "url": "", "maintainer": "DeskDaily", "usb": { "vid": "0xD812", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/nightly_boards/conde60/keyboard.json b/keyboards/nightly_boards/conde60/keyboard.json index 38e7b8383a..e74dff445c 100644 --- a/keyboards/nightly_boards/conde60/keyboard.json +++ b/keyboards/nightly_boards/conde60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Conde60", "manufacturer": "DeskDaily", - "url": "", "maintainer": "DeskDaily", "usb": { "vid": "0xD812", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/nightly_boards/daily60/keyboard.json b/keyboards/nightly_boards/daily60/keyboard.json index d3614d1b44..dc8382a6f0 100644 --- a/keyboards/nightly_boards/daily60/keyboard.json +++ b/keyboards/nightly_boards/daily60/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/nightly_boards/jisoo/keyboard.json b/keyboards/nightly_boards/jisoo/keyboard.json index 21b8122497..3ac607ec62 100644 --- a/keyboards/nightly_boards/jisoo/keyboard.json +++ b/keyboards/nightly_boards/jisoo/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/nightly_boards/n2/keyboard.json b/keyboards/nightly_boards/n2/keyboard.json index 4aa554716f..7f8d0e5e48 100644 --- a/keyboards/nightly_boards/n2/keyboard.json +++ b/keyboards/nightly_boards/n2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "[n]2", "manufacturer": "Neil Brian Ramirez", - "url": "", "maintainer": "Neil Brian Ramirez", "usb": { "vid": "0x0717", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/nightly_boards/n40_o/keyboard.json b/keyboards/nightly_boards/n40_o/keyboard.json index f749c143eb..c1b8381669 100644 --- a/keyboards/nightly_boards/n40_o/keyboard.json +++ b/keyboards/nightly_boards/n40_o/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "[n]40-o", "manufacturer": "Neil Brian Ramirez", - "url": "", "maintainer": "Neil Brian Ramirez", "features": { "bootmagic": true, diff --git a/keyboards/nightly_boards/n60_s/keyboard.json b/keyboards/nightly_boards/n60_s/keyboard.json index f6e235fec5..4d6a53dd48 100644 --- a/keyboards/nightly_boards/n60_s/keyboard.json +++ b/keyboards/nightly_boards/n60_s/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "[n]60-S", "manufacturer": "Neil Brian Ramirez", - "url": "", "maintainer": "Neil Brian Ramirez", "usb": { "vid": "0xD812", @@ -14,8 +13,6 @@ "features": { "audio": true, "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/nightly_boards/n87/keyboard.json b/keyboards/nightly_boards/n87/keyboard.json index ddfd27125c..f8c75b893d 100644 --- a/keyboards/nightly_boards/n87/keyboard.json +++ b/keyboards/nightly_boards/n87/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "[n]87", "manufacturer": "Neil Brian Ramirez", - "url": "", "maintainer": "Neil Brian Ramirez", "usb": { "vid": "0x0717", @@ -11,8 +10,6 @@ "features": { "audio": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/nightly_boards/n9/keyboard.json b/keyboards/nightly_boards/n9/keyboard.json index 83f9495445..e3d8a3be84 100644 --- a/keyboards/nightly_boards/n9/keyboard.json +++ b/keyboards/nightly_boards/n9/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "[n]9", "manufacturer": "Neil Brian Ramirez", - "url": "", "maintainer": "Neil Brian Ramirez", "usb": { "vid": "0xD812", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/nightly_boards/octopad/keyboard.json b/keyboards/nightly_boards/octopad/keyboard.json index 797f26a2c2..af1015ea95 100644 --- a/keyboards/nightly_boards/octopad/keyboard.json +++ b/keyboards/nightly_boards/octopad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Octopad", "manufacturer": "Neil Brian Ramirez", - "url": "", "maintainer": "Neil Brian Ramirez", "usb": { "vid": "0xD812", @@ -14,8 +13,6 @@ "features": { "audio": true, "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/nightly_boards/octopadplus/keyboard.json b/keyboards/nightly_boards/octopadplus/keyboard.json index ca5a7cdad1..8c802ab646 100644 --- a/keyboards/nightly_boards/octopadplus/keyboard.json +++ b/keyboards/nightly_boards/octopadplus/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Octopad+", "manufacturer": "DeskDaily", - "url": "", "maintainer": "DeskDaily", "usb": { "vid": "0xD812", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, @@ -52,9 +49,7 @@ "twinkle": true }, "brightness_steps": 8, - "hue_steps": 8, "led_count": 8, - "max_brightness": 255, "saturation_steps": 8, "sleep": true }, diff --git a/keyboards/nightly_boards/paraluman/keyboard.json b/keyboards/nightly_boards/paraluman/keyboard.json index f18cefe601..6ce7d0f111 100644 --- a/keyboards/nightly_boards/paraluman/keyboard.json +++ b/keyboards/nightly_boards/paraluman/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Paraluman", "manufacturer": "DeskDaily", - "url": "", "maintainer": "DeskDaily", "usb": { "vid": "0xD812", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/nightly_boards/ph_arisu/keyboard.json b/keyboards/nightly_boards/ph_arisu/keyboard.json index 55f9e6e90c..afcbdd905a 100644 --- a/keyboards/nightly_boards/ph_arisu/keyboard.json +++ b/keyboards/nightly_boards/ph_arisu/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/nimrod/keyboard.json b/keyboards/nimrod/keyboard.json index 08351efb20..4b82ba3617 100644 --- a/keyboards/nimrod/keyboard.json +++ b/keyboards/nimrod/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/ning/tiny_board/tb16_rgb/keyboard.json b/keyboards/ning/tiny_board/tb16_rgb/keyboard.json index 57a2438c3d..4501c4daeb 100644 --- a/keyboards/ning/tiny_board/tb16_rgb/keyboard.json +++ b/keyboards/ning/tiny_board/tb16_rgb/keyboard.json @@ -5,8 +5,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -29,7 +27,6 @@ "pin": "B5" }, "development_board": "promicro", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0000", diff --git a/keyboards/nix_studio/lilith/board.h b/keyboards/nix_studio/lilith/board.h new file mode 100644 index 0000000000..2a370fe2e0 --- /dev/null +++ b/keyboards/nix_studio/lilith/board.h @@ -0,0 +1,8 @@ +// Copyright 2022 Martin Arnstad (@arnstadm) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/nix_studio/lilith/keyboard.json b/keyboards/nix_studio/lilith/keyboard.json index 7fe03ef806..569740d7e5 100644 --- a/keyboards/nix_studio/lilith/keyboard.json +++ b/keyboards/nix_studio/lilith/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/nix_studio/n60_a/keyboard.json b/keyboards/nix_studio/n60_a/keyboard.json index 3f9b4dd086..de5507c692 100644 --- a/keyboards/nix_studio/n60_a/keyboard.json +++ b/keyboards/nix_studio/n60_a/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "N60A", "manufacturer": "Nix Studio", - "url": "", "maintainer": "Nix Studio", "usb": { "vid": "0x6E78", diff --git a/keyboards/nix_studio/oxalys80/keyboard.json b/keyboards/nix_studio/oxalys80/keyboard.json index 470c43ea2f..07e7419c56 100644 --- a/keyboards/nix_studio/oxalys80/keyboard.json +++ b/keyboards/nix_studio/oxalys80/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "OXALYS80", "manufacturer": "Nix Studio", - "url": "", "maintainer": "Nix Studio", "usb": { "vid": "0x6E78", @@ -14,8 +13,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/nixkeyboards/day_off/keyboard.json b/keyboards/nixkeyboards/day_off/keyboard.json index 2edbcdf883..a1108ec098 100644 --- a/keyboards/nixkeyboards/day_off/keyboard.json +++ b/keyboards/nixkeyboards/day_off/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/nopunin10did/jabberwocky/v1/keyboard.json b/keyboards/nopunin10did/jabberwocky/v1/keyboard.json index 6c8b71460e..25f7f7a533 100644 --- a/keyboards/nopunin10did/jabberwocky/v1/keyboard.json +++ b/keyboards/nopunin10did/jabberwocky/v1/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/nopunin10did/jabberwocky/v2/keyboard.json b/keyboards/nopunin10did/jabberwocky/v2/keyboard.json index 7c688039a3..784732a54a 100644 --- a/keyboards/nopunin10did/jabberwocky/v2/keyboard.json +++ b/keyboards/nopunin10did/jabberwocky/v2/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/nopunin10did/kastenwagen1840/keyboard.json b/keyboards/nopunin10did/kastenwagen1840/keyboard.json index 771df3d82c..7dea20455c 100644 --- a/keyboards/nopunin10did/kastenwagen1840/keyboard.json +++ b/keyboards/nopunin10did/kastenwagen1840/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/nopunin10did/kastenwagen48/keyboard.json b/keyboards/nopunin10did/kastenwagen48/keyboard.json index 58a9d7c2a8..0132d0fa61 100644 --- a/keyboards/nopunin10did/kastenwagen48/keyboard.json +++ b/keyboards/nopunin10did/kastenwagen48/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/nopunin10did/railroad/rev0/keyboard.json b/keyboards/nopunin10did/railroad/rev0/keyboard.json index 7dcc17f762..92c878c571 100644 --- a/keyboards/nopunin10did/railroad/rev0/keyboard.json +++ b/keyboards/nopunin10did/railroad/rev0/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/nopunin10did/styrkatmel/keyboard.json b/keyboards/nopunin10did/styrkatmel/keyboard.json index 98a9597b34..033357d8f2 100644 --- a/keyboards/nopunin10did/styrkatmel/keyboard.json +++ b/keyboards/nopunin10did/styrkatmel/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": false, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/novelkeys/nk1/keyboard.json b/keyboards/novelkeys/nk1/keyboard.json index 0fa15cf9f2..cb055b71ca 100755 --- a/keyboards/novelkeys/nk1/keyboard.json +++ b/keyboards/novelkeys/nk1/keyboard.json @@ -33,8 +33,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/novelkeys/nk65/info.json b/keyboards/novelkeys/nk65/info.json index e3bff19346..ae02d3ac05 100755 --- a/keyboards/novelkeys/nk65/info.json +++ b/keyboards/novelkeys/nk65/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "NK65", "manufacturer": "Yiancar-Designs", - "url": "", "maintainer": "yiancar", "usb": { "vid": "0x8968", diff --git a/keyboards/novelkeys/nk_classic_tkl/keyboard.json b/keyboards/novelkeys/nk_classic_tkl/keyboard.json index 53d10ce32a..2df8322ed8 100755 --- a/keyboards/novelkeys/nk_classic_tkl/keyboard.json +++ b/keyboards/novelkeys/nk_classic_tkl/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/novelkeys/nk_classic_tkl_iso/keyboard.json b/keyboards/novelkeys/nk_classic_tkl_iso/keyboard.json index 12085cbacc..9944708955 100755 --- a/keyboards/novelkeys/nk_classic_tkl_iso/keyboard.json +++ b/keyboards/novelkeys/nk_classic_tkl_iso/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/novelkeys/nk_plus/keyboard.json b/keyboards/novelkeys/nk_plus/keyboard.json index b823d2808b..c4d1dc4df7 100755 --- a/keyboards/novelkeys/nk_plus/keyboard.json +++ b/keyboards/novelkeys/nk_plus/keyboard.json @@ -15,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/novelkeys/novelpad/keyboard.json b/keyboards/novelkeys/novelpad/keyboard.json index bb190dd284..340c30c0d9 100644 --- a/keyboards/novelkeys/novelpad/keyboard.json +++ b/keyboards/novelkeys/novelpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NovelPad", "manufacturer": "NovelKeys.xyz", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,7 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/noxary/220/keyboard.json b/keyboards/noxary/220/keyboard.json index 3565316999..60e68305d3 100644 --- a/keyboards/noxary/220/keyboard.json +++ b/keyboards/noxary/220/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "220", "manufacturer": "Noxary", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4E58", diff --git a/keyboards/noxary/260/keyboard.json b/keyboards/noxary/260/keyboard.json index d5353d4244..e5af9b3095 100644 --- a/keyboards/noxary/260/keyboard.json +++ b/keyboards/noxary/260/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "260", "manufacturer": "Noxary", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4E58", diff --git a/keyboards/noxary/268_2/keyboard.json b/keyboards/noxary/268_2/keyboard.json index 08daee6d63..256a6fd458 100644 --- a/keyboards/noxary/268_2/keyboard.json +++ b/keyboards/noxary/268_2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "268.2", "manufacturer": "Noxary", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4E58", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/noxary/268_2_rgb/keyboard.json b/keyboards/noxary/268_2_rgb/keyboard.json index 380a772767..f4e1894078 100644 --- a/keyboards/noxary/268_2_rgb/keyboard.json +++ b/keyboards/noxary/268_2_rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "268.2 RGB", "manufacturer": "Noxary", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4E58", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/noxary/280/keyboard.json b/keyboards/noxary/280/keyboard.json index 4bd9257152..88bf9e2123 100644 --- a/keyboards/noxary/280/keyboard.json +++ b/keyboards/noxary/280/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "280", "manufacturer": "Noxary", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4E58", diff --git a/keyboards/noxary/378/keyboard.json b/keyboards/noxary/378/keyboard.json index 3502604d6c..39e6ceeb8e 100644 --- a/keyboards/noxary/378/keyboard.json +++ b/keyboards/noxary/378/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "378", "manufacturer": "Noxary", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x4E58", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/noxary/valhalla/keyboard.json b/keyboards/noxary/valhalla/keyboard.json index 3bc3d80a34..087e762752 100644 --- a/keyboards/noxary/valhalla/keyboard.json +++ b/keyboards/noxary/valhalla/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Valhalla", "manufacturer": "Noxary", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x4E58", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/noxary/valhalla_v2/keyboard.json b/keyboards/noxary/valhalla_v2/keyboard.json index 671bd0b775..cf187e5ba0 100644 --- a/keyboards/noxary/valhalla_v2/keyboard.json +++ b/keyboards/noxary/valhalla_v2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Valhalla V2", "manufacturer": "Noxary", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x4E58", @@ -16,7 +15,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, "backlight": true, "nkro": true }, diff --git a/keyboards/noxary/vulcan/keyboard.json b/keyboards/noxary/vulcan/keyboard.json index 821cb000b5..18dab7063d 100644 --- a/keyboards/noxary/vulcan/keyboard.json +++ b/keyboards/noxary/vulcan/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/noxary/x268/keyboard.json b/keyboards/noxary/x268/keyboard.json index 7ca5799de2..024201c886 100644 --- a/keyboards/noxary/x268/keyboard.json +++ b/keyboards/noxary/x268/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "x268", "manufacturer": "Noxary", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4E58", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/np12/keyboard.json b/keyboards/np12/keyboard.json index d7f6f8cfb7..435f2db3b7 100644 --- a/keyboards/np12/keyboard.json +++ b/keyboards/np12/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/null/st110r2/keyboard.json b/keyboards/null/st110r2/keyboard.json index b83e9746e1..09d5cefd8d 100644 --- a/keyboards/null/st110r2/keyboard.json +++ b/keyboards/null/st110r2/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/numatreus/keyboard.json b/keyboards/numatreus/keyboard.json index 3120b48f55..3441a769e1 100644 --- a/keyboards/numatreus/keyboard.json +++ b/keyboards/numatreus/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NumAtreus", "manufacturer": "yohewi", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/nyhxis/nfr_70/keyboard.json b/keyboards/nyhxis/nfr_70/keyboard.json index 0fbb4681d8..b614d9b745 100644 --- a/keyboards/nyhxis/nfr_70/keyboard.json +++ b/keyboards/nyhxis/nfr_70/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/obosob/arch_36/keyboard.json b/keyboards/obosob/arch_36/keyboard.json index 290446dd22..791c08d3f1 100644 --- a/keyboards/obosob/arch_36/keyboard.json +++ b/keyboards/obosob/arch_36/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Arch-36", "manufacturer": "obosob", - "url": "", "maintainer": "obosob", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/obosob/steal_this_keyboard/keyboard.json b/keyboards/obosob/steal_this_keyboard/keyboard.json index cc99431b5a..4865f54283 100644 --- a/keyboards/obosob/steal_this_keyboard/keyboard.json +++ b/keyboards/obosob/steal_this_keyboard/keyboard.json @@ -12,8 +12,6 @@ "bootloader": "caterina", "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/ocean/addon/keyboard.json b/keyboards/ocean/addon/keyboard.json index b7502a28b6..0793a7082a 100644 --- a/keyboards/ocean/addon/keyboard.json +++ b/keyboards/ocean/addon/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ocean/gin_v2/keyboard.json b/keyboards/ocean/gin_v2/keyboard.json index b6f22b813b..d20aa5916f 100644 --- a/keyboards/ocean/gin_v2/keyboard.json +++ b/keyboards/ocean/gin_v2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Gin V2", "manufacturer": "Ocean", - "url": "", "maintainer": "Ocean", "usb": { "vid": "0x9624", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ocean/slamz/keyboard.json b/keyboards/ocean/slamz/keyboard.json index 6712077763..cf3ed54426 100644 --- a/keyboards/ocean/slamz/keyboard.json +++ b/keyboards/ocean/slamz/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Slamz", "manufacturer": "Ocean", - "url": "", "maintainer": "Ocean", "usb": { "vid": "0x9624", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ocean/stealth/keyboard.json b/keyboards/ocean/stealth/keyboard.json index b094a5f4bf..a15d2fffac 100644 --- a/keyboards/ocean/stealth/keyboard.json +++ b/keyboards/ocean/stealth/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Stealth", "manufacturer": "Ocean", - "url": "", "maintainer": "Ocean", "usb": { "vid": "0x9624", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ocean/sus/keyboard.json b/keyboards/ocean/sus/keyboard.json index ea2b1e326a..3ac426f6aa 100644 --- a/keyboards/ocean/sus/keyboard.json +++ b/keyboards/ocean/sus/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ocean/wang_ergo/keyboard.json b/keyboards/ocean/wang_ergo/keyboard.json index 5debc4396d..d552028bc6 100644 --- a/keyboards/ocean/wang_ergo/keyboard.json +++ b/keyboards/ocean/wang_ergo/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Wang Ergo", "manufacturer": "Ocean", - "url": "", "maintainer": "oceeean", "usb": { "vid": "0x9624", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ocean/wang_v2/keyboard.json b/keyboards/ocean/wang_v2/keyboard.json index 6e80932ce2..79ef6b3697 100644 --- a/keyboards/ocean/wang_v2/keyboard.json +++ b/keyboards/ocean/wang_v2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Wang V2", "manufacturer": "Ocean", - "url": "", "maintainer": "Ocean", "usb": { "vid": "0x9624", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ocean/yuri/keyboard.json b/keyboards/ocean/yuri/keyboard.json index 6542de2cda..aeb4cd895d 100644 --- a/keyboards/ocean/yuri/keyboard.json +++ b/keyboards/ocean/yuri/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/odelia/keyboard.json b/keyboards/odelia/keyboard.json index 3c187b5c18..425240d507 100644 --- a/keyboards/odelia/keyboard.json +++ b/keyboards/odelia/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Odelia", "manufacturer": "InterpolKeeb", - "url": "", "maintainer": "kb-elmo", "usb": { "vid": "0x6BE3", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/ogre/ergo_single/keyboard.json b/keyboards/ogre/ergo_single/keyboard.json index 3ebd88b0d2..1abaf26400 100644 --- a/keyboards/ogre/ergo_single/keyboard.json +++ b/keyboards/ogre/ergo_single/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ogre Ergo Single", "manufacturer": "ctrlshiftba", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false, diff --git a/keyboards/ogre/ergo_split/keyboard.json b/keyboards/ogre/ergo_split/keyboard.json index 4dc3caa530..ea8a28ba4a 100644 --- a/keyboards/ogre/ergo_split/keyboard.json +++ b/keyboards/ogre/ergo_split/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ogre Ergo Split", "manufacturer": "ctrlshiftba", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false, diff --git a/keyboards/ok60/keyboard.json b/keyboards/ok60/keyboard.json index 5cf55b666d..52ddebc011 100644 --- a/keyboards/ok60/keyboard.json +++ b/keyboards/ok60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "OK60", "manufacturer": "OK60", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4B36", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/omkbd/ergodash/mini/keyboard.json b/keyboards/omkbd/ergodash/mini/keyboard.json index 7c15c4f6f7..ea12ea5a9e 100644 --- a/keyboards/omkbd/ergodash/mini/keyboard.json +++ b/keyboards/omkbd/ergodash/mini/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ErgoDash Mini", "manufacturer": "Omkbd", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/omkbd/ergodash/rev1/keyboard.json b/keyboards/omkbd/ergodash/rev1/keyboard.json index 6a61950ba6..a25610be9c 100644 --- a/keyboards/omkbd/ergodash/rev1/keyboard.json +++ b/keyboards/omkbd/ergodash/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ErgoDash rev1.2", "manufacturer": "Omkbd", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/omkbd/runner3680/3x6/keyboard.json b/keyboards/omkbd/runner3680/3x6/keyboard.json index 44c5ce35a0..4b8c71a156 100644 --- a/keyboards/omkbd/runner3680/3x6/keyboard.json +++ b/keyboards/omkbd/runner3680/3x6/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "runner3680 3x6", "manufacturer": "Omkbd", - "url": "", "maintainer": "omkbd", "usb": { "vid": "0xFEED", diff --git a/keyboards/omkbd/runner3680/3x7/keyboard.json b/keyboards/omkbd/runner3680/3x7/keyboard.json index 8a4c55ca71..974147f732 100644 --- a/keyboards/omkbd/runner3680/3x7/keyboard.json +++ b/keyboards/omkbd/runner3680/3x7/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "runner3680 3x7", "manufacturer": "Omkbd", - "url": "", "maintainer": "omkbd", "usb": { "vid": "0xFEED", diff --git a/keyboards/omkbd/runner3680/3x8/keyboard.json b/keyboards/omkbd/runner3680/3x8/keyboard.json index 11fe738a8a..04fadf854b 100644 --- a/keyboards/omkbd/runner3680/3x8/keyboard.json +++ b/keyboards/omkbd/runner3680/3x8/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "runner3680 3x8", "manufacturer": "Omkbd", - "url": "", "maintainer": "omkbd", "usb": { "vid": "0xFEED", diff --git a/keyboards/omkbd/runner3680/4x6/keyboard.json b/keyboards/omkbd/runner3680/4x6/keyboard.json index 2449f3431e..7f8ecd0239 100644 --- a/keyboards/omkbd/runner3680/4x6/keyboard.json +++ b/keyboards/omkbd/runner3680/4x6/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "runner3680 4x6", "manufacturer": "Omkbd", - "url": "", "maintainer": "omkbd", "usb": { "vid": "0xFEED", diff --git a/keyboards/omkbd/runner3680/4x7/keyboard.json b/keyboards/omkbd/runner3680/4x7/keyboard.json index 01acfad1e7..5bee706192 100644 --- a/keyboards/omkbd/runner3680/4x7/keyboard.json +++ b/keyboards/omkbd/runner3680/4x7/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "runner3680 4x7", "manufacturer": "Omkbd", - "url": "", "maintainer": "omkbd", "usb": { "vid": "0xFEED", diff --git a/keyboards/omkbd/runner3680/4x8/keyboard.json b/keyboards/omkbd/runner3680/4x8/keyboard.json index 748fc05508..e9142eec3d 100644 --- a/keyboards/omkbd/runner3680/4x8/keyboard.json +++ b/keyboards/omkbd/runner3680/4x8/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "runner3680 4x8", "manufacturer": "Omkbd", - "url": "", "maintainer": "omkbd", "usb": { "vid": "0xFEED", diff --git a/keyboards/omkbd/runner3680/5x6/keyboard.json b/keyboards/omkbd/runner3680/5x6/keyboard.json index 9b043c7e19..5d2d22d7fa 100644 --- a/keyboards/omkbd/runner3680/5x6/keyboard.json +++ b/keyboards/omkbd/runner3680/5x6/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "runner3680 5x6", "manufacturer": "Omkbd", - "url": "", "maintainer": "omkbd", "usb": { "vid": "0xFEED", diff --git a/keyboards/omkbd/runner3680/5x6_5x8/keyboard.json b/keyboards/omkbd/runner3680/5x6_5x8/keyboard.json index b8a361f1b2..2d912a1445 100644 --- a/keyboards/omkbd/runner3680/5x6_5x8/keyboard.json +++ b/keyboards/omkbd/runner3680/5x6_5x8/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "runner3680 5x6+5x8", "manufacturer": "Omkbd", - "url": "", "maintainer": "omkbd", "usb": { "vid": "0x3680", diff --git a/keyboards/omkbd/runner3680/5x7/keyboard.json b/keyboards/omkbd/runner3680/5x7/keyboard.json index 41df797770..41de1f80f5 100644 --- a/keyboards/omkbd/runner3680/5x7/keyboard.json +++ b/keyboards/omkbd/runner3680/5x7/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "runner3680 5x7", "manufacturer": "Omkbd", - "url": "", "maintainer": "omkbd", "usb": { "vid": "0xFEED", diff --git a/keyboards/omkbd/runner3680/5x8/keyboard.json b/keyboards/omkbd/runner3680/5x8/keyboard.json index 04294371d7..11857942b8 100644 --- a/keyboards/omkbd/runner3680/5x8/keyboard.json +++ b/keyboards/omkbd/runner3680/5x8/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "runner3680 5x8", "manufacturer": "Omkbd", - "url": "", "maintainer": "omkbd", "usb": { "vid": "0xFEED", diff --git a/keyboards/omnikeyish/dynamic_macro.c b/keyboards/omnikeyish/dynamic_macro.c index b990a09a13..99b6d173b8 100644 --- a/keyboards/omnikeyish/dynamic_macro.c +++ b/keyboards/omnikeyish/dynamic_macro.c @@ -1,5 +1,6 @@ #include "omnikeyish.h" #include <string.h> +#include "eeprom.h" dynamic_macro_t dynamic_macros[DYNAMIC_MACRO_COUNT]; diff --git a/keyboards/onekeyco/dango40/keyboard.json b/keyboards/onekeyco/dango40/keyboard.json index 8a41f25325..25baf9e2bc 100644 --- a/keyboards/onekeyco/dango40/keyboard.json +++ b/keyboards/onekeyco/dango40/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/orange75/keyboard.json b/keyboards/orange75/keyboard.json index a0ef819651..cd6108581c 100644 --- a/keyboards/orange75/keyboard.json +++ b/keyboards/orange75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Orange75", "manufacturer": "Fox-Lab", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEEB", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/org60/keyboard.json b/keyboards/org60/keyboard.json index 2586d16b08..e59dc27e63 100644 --- a/keyboards/org60/keyboard.json +++ b/keyboards/org60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Org60", "manufacturer": "\u5927\u6a58\u5b50\u5916\u8bbe (Large orange peripherals)", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/ortho5by12/keyboard.json b/keyboards/ortho5by12/keyboard.json index 5bcd1e00fc..a360e9d3d7 100644 --- a/keyboards/ortho5by12/keyboard.json +++ b/keyboards/ortho5by12/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/orthograph/keyboard.json b/keyboards/orthograph/keyboard.json index a3fbf634e5..d9ec03a7ad 100644 --- a/keyboards/orthograph/keyboard.json +++ b/keyboards/orthograph/keyboard.json @@ -16,8 +16,6 @@ "features": { "rgb_matrix": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/owlab/jelly_epoch/hotswap/keyboard.json b/keyboards/owlab/jelly_epoch/hotswap/keyboard.json index 38db4c965b..8fcea8034d 100644 --- a/keyboards/owlab/jelly_epoch/hotswap/keyboard.json +++ b/keyboards/owlab/jelly_epoch/hotswap/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/owlab/jelly_epoch/soldered/keyboard.json b/keyboards/owlab/jelly_epoch/soldered/keyboard.json index 5a12cdf0e9..2d807c58a9 100644 --- a/keyboards/owlab/jelly_epoch/soldered/keyboard.json +++ b/keyboards/owlab/jelly_epoch/soldered/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/owlab/jelly_evolv/info.json b/keyboards/owlab/jelly_evolv/info.json index 999bcca477..cd67a95a8d 100644 --- a/keyboards/owlab/jelly_evolv/info.json +++ b/keyboards/owlab/jelly_evolv/info.json @@ -1,6 +1,5 @@ { "manufacturer": "OwLab", - "url": "", "maintainer": "Owlab", "usb": { "vid": "0x4F53" diff --git a/keyboards/owlab/spring/keyboard.json b/keyboards/owlab/spring/keyboard.json index 7dcb6ec717..1789f4ebb1 100644 --- a/keyboards/owlab/spring/keyboard.json +++ b/keyboards/owlab/spring/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Spring", "manufacturer": "OwLab", - "url": "", "maintainer": "OwLab", "usb": { "vid": "0x4F53", @@ -11,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/owlab/suit80/ansi/keyboard.json b/keyboards/owlab/suit80/ansi/keyboard.json index 22bf9f78cd..fe0f1b6e4b 100644 --- a/keyboards/owlab/suit80/ansi/keyboard.json +++ b/keyboards/owlab/suit80/ansi/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Suit80 ANSI", "manufacturer": "OwLab", - "url": "", "maintainer": "Owlab", "usb": { "vid": "0x4F53", @@ -11,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/owlab/suit80/iso/keyboard.json b/keyboards/owlab/suit80/iso/keyboard.json index 87e95e9bee..2d9fcde472 100644 --- a/keyboards/owlab/suit80/iso/keyboard.json +++ b/keyboards/owlab/suit80/iso/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Suit80 ISO", "manufacturer": "OwLab", - "url": "", "maintainer": "Owlab", "usb": { "vid": "0x4F53", @@ -11,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/owlab/voice65/hotswap/keyboard.json b/keyboards/owlab/voice65/hotswap/keyboard.json index 088cde4001..f153efbde2 100644 --- a/keyboards/owlab/voice65/hotswap/keyboard.json +++ b/keyboards/owlab/voice65/hotswap/keyboard.json @@ -66,8 +66,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/owlab/voice65/soldered/keyboard.json b/keyboards/owlab/voice65/soldered/keyboard.json index 7aab520f76..932c32d2fd 100644 --- a/keyboards/owlab/voice65/soldered/keyboard.json +++ b/keyboards/owlab/voice65/soldered/keyboard.json @@ -66,8 +66,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/p3d/eu_isolation/keyboard.json b/keyboards/p3d/eu_isolation/keyboard.json index 715515c42d..99a3548bb8 100644 --- a/keyboards/p3d/eu_isolation/keyboard.json +++ b/keyboards/p3d/eu_isolation/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "EU ISOlation", "manufacturer": "TuckTuckFloof", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/p3d/glitch/keyboard.json b/keyboards/p3d/glitch/keyboard.json index 5de1405f4f..d860877b75 100644 --- a/keyboards/p3d/glitch/keyboard.json +++ b/keyboards/p3d/glitch/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/p3d/q4z/keyboard.json b/keyboards/p3d/q4z/keyboard.json index 9dfa123c6c..0c293b92bd 100644 --- a/keyboards/p3d/q4z/keyboard.json +++ b/keyboards/p3d/q4z/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "q4z", "manufacturer": "drmmr", - "url": "", "maintainer": "rjboone", "usb": { "vid": "0x0001", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/p3d/spacey/keyboard.json b/keyboards/p3d/spacey/keyboard.json index ed23c327ad..fdf19d0a72 100644 --- a/keyboards/p3d/spacey/keyboard.json +++ b/keyboards/p3d/spacey/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "spacey", "manufacturer": "vanilla", - "url": "", "maintainer": "vanilla", "usb": { "vid": "0x5641", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/p3d/synapse/keyboard.json b/keyboards/p3d/synapse/keyboard.json index accd9ad47e..0c28e5b495 100644 --- a/keyboards/p3d/synapse/keyboard.json +++ b/keyboards/p3d/synapse/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "synapse", "manufacturer": "drmmr", - "url": "", "maintainer": "qpockets", "usb": { "vid": "0x7170", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/p3d/tw40/keyboard.json b/keyboards/p3d/tw40/keyboard.json index 459e187533..488474f21e 100644 --- a/keyboards/p3d/tw40/keyboard.json +++ b/keyboards/p3d/tw40/keyboard.json @@ -28,8 +28,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/pabile/p18/keyboard.json b/keyboards/pabile/p18/keyboard.json index 4bc6047ec0..bf3380038a 100644 --- a/keyboards/pabile/p18/keyboard.json +++ b/keyboards/pabile/p18/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/pabile/p20/info.json b/keyboards/pabile/p20/info.json index 2584130637..0bac40f010 100644 --- a/keyboards/pabile/p20/info.json +++ b/keyboards/pabile/p20/info.json @@ -1,6 +1,5 @@ { "manufacturer": "Pabile", - "url": "", "maintainer": "pabile", "usb": { "vid": "0x6666", diff --git a/keyboards/pabile/p20/ver1/keyboard.json b/keyboards/pabile/p20/ver1/keyboard.json index e909617faa..3e3a16a6d9 100644 --- a/keyboards/pabile/p20/ver1/keyboard.json +++ b/keyboards/pabile/p20/ver1/keyboard.json @@ -5,8 +5,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/pabile/p20/ver2/keyboard.json b/keyboards/pabile/p20/ver2/keyboard.json index b6688d870e..cdacbf3aec 100644 --- a/keyboards/pabile/p20/ver2/keyboard.json +++ b/keyboards/pabile/p20/ver2/keyboard.json @@ -5,8 +5,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/pabile/p40/keyboard.json b/keyboards/pabile/p40/keyboard.json index 980da54a06..fbe4896687 100644 --- a/keyboards/pabile/p40/keyboard.json +++ b/keyboards/pabile/p40/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/pabile/p40_ortho/keyboard.json b/keyboards/pabile/p40_ortho/keyboard.json index 305c0ad331..3e5d9ea504 100644 --- a/keyboards/pabile/p40_ortho/keyboard.json +++ b/keyboards/pabile/p40_ortho/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/pabile/p42/keyboard.json b/keyboards/pabile/p42/keyboard.json index 70dcb09744..42c8964332 100644 --- a/keyboards/pabile/p42/keyboard.json +++ b/keyboards/pabile/p42/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/panc40/keyboard.json b/keyboards/panc40/keyboard.json index fe98da7f2e..7bc19fab06 100644 --- a/keyboards/panc40/keyboard.json +++ b/keyboards/panc40/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Panc40", "manufacturer": "Panc Interactive", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/panc60/keyboard.json b/keyboards/panc60/keyboard.json index e0f3a491c8..98410497d5 100644 --- a/keyboards/panc60/keyboard.json +++ b/keyboards/panc60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Panc60", "manufacturer": "Panc Interactive", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x20A0", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/pangorin/tan67/keyboard.json b/keyboards/pangorin/tan67/keyboard.json index 5b36fd7a40..3c593d846b 100644 --- a/keyboards/pangorin/tan67/keyboard.json +++ b/keyboards/pangorin/tan67/keyboard.json @@ -18,8 +18,6 @@ "bootmagic": true, "mousekey": false, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/papercranekeyboards/gerald65/keyboard.json b/keyboards/papercranekeyboards/gerald65/keyboard.json index 255727d508..48ccbf1b5a 100644 --- a/keyboards/papercranekeyboards/gerald65/keyboard.json +++ b/keyboards/papercranekeyboards/gerald65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "gerald65", "manufacturer": "PaperCraneKeyboards", - "url": "", "maintainer": "PaperCraneKeyboards", "usb": { "vid": "0x5012", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/paprikman/albacore/keyboard.json b/keyboards/paprikman/albacore/keyboard.json index 1ee4b998f7..8706c67bcd 100644 --- a/keyboards/paprikman/albacore/keyboard.json +++ b/keyboards/paprikman/albacore/keyboard.json @@ -18,8 +18,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/parallel/parallel_65/hotswap/keyboard.json b/keyboards/parallel/parallel_65/hotswap/keyboard.json index 8b1e31191f..228d9dcb7e 100644 --- a/keyboards/parallel/parallel_65/hotswap/keyboard.json +++ b/keyboards/parallel/parallel_65/hotswap/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/parallel/parallel_65/soldered/keyboard.json b/keyboards/parallel/parallel_65/soldered/keyboard.json index 2e8d049dbf..6acf08d808 100644 --- a/keyboards/parallel/parallel_65/soldered/keyboard.json +++ b/keyboards/parallel/parallel_65/soldered/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/pauperboards/brick/keyboard.json b/keyboards/pauperboards/brick/keyboard.json index 8ebe32ded4..f1775b4be5 100644 --- a/keyboards/pauperboards/brick/keyboard.json +++ b/keyboards/pauperboards/brick/keyboard.json @@ -17,8 +17,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -35,7 +33,6 @@ }, "rgblight": { "led_count": 8, - "hue_steps": 8, "brightness_steps": 8, "saturation_steps": 8, "animations": { diff --git a/keyboards/pdxkbc/keyboard.json b/keyboards/pdxkbc/keyboard.json index 642adc0878..7921c67190 100644 --- a/keyboards/pdxkbc/keyboard.json +++ b/keyboards/pdxkbc/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "pdxkbc", "manufacturer": "Franklin Harding", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5044", diff --git a/keyboards/pearl/keyboard.json b/keyboards/pearl/keyboard.json index 60c5bb3a37..c839c54e19 100644 --- a/keyboards/pearl/keyboard.json +++ b/keyboards/pearl/keyboard.json @@ -11,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/pearlboards/atlas/keyboard.json b/keyboards/pearlboards/atlas/keyboard.json index 6886885e03..ea9f86ec51 100644 --- a/keyboards/pearlboards/atlas/keyboard.json +++ b/keyboards/pearlboards/atlas/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Atlas", "manufacturer": "Koobaczech", - "url": "", "maintainer": "Koobaczech", "usb": { "vid": "0x6963", diff --git a/keyboards/pearlboards/pandora/keyboard.json b/keyboards/pearlboards/pandora/keyboard.json index 670aa6f75a..c17de8de35 100644 --- a/keyboards/pearlboards/pandora/keyboard.json +++ b/keyboards/pearlboards/pandora/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Pandora", "manufacturer": "Koobaczech", - "url": "", "maintainer": "Koobaczech", "usb": { "vid": "0x6963", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "dip_switch": true, "encoder": true, "extrakey": true, diff --git a/keyboards/pearlboards/pearl/keyboard.json b/keyboards/pearlboards/pearl/keyboard.json index e91192475f..3f35aec006 100644 --- a/keyboards/pearlboards/pearl/keyboard.json +++ b/keyboards/pearlboards/pearl/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Pearl", "manufacturer": "Koobaczech", - "url": "", "maintainer": "Koobaczech", "usb": { "vid": "0x6963", diff --git a/keyboards/pearlboards/zeus/keyboard.json b/keyboards/pearlboards/zeus/keyboard.json index 9a3e7ead5f..72751a5fec 100644 --- a/keyboards/pearlboards/zeus/keyboard.json +++ b/keyboards/pearlboards/zeus/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Zeus", "manufacturer": "Koobaczech", - "url": "", "maintainer": "Koobaczech", "usb": { "vid": "0x6963", diff --git a/keyboards/pearlboards/zeuspad/keyboard.json b/keyboards/pearlboards/zeuspad/keyboard.json index 93e1e64433..865e9c4e79 100644 --- a/keyboards/pearlboards/zeuspad/keyboard.json +++ b/keyboards/pearlboards/zeuspad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Zeuspad", "manufacturer": "Koobaczech", - "url": "", "maintainer": "Koobaczech", "usb": { "vid": "0x6963", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/peej/lumberjack/keyboard.json b/keyboards/peej/lumberjack/keyboard.json index c94cb008be..9893ba7227 100644 --- a/keyboards/peej/lumberjack/keyboard.json +++ b/keyboards/peej/lumberjack/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/peej/tripel/info.json b/keyboards/peej/tripel/info.json index 8e357205f9..7a5c12461a 100644 --- a/keyboards/peej/tripel/info.json +++ b/keyboards/peej/tripel/info.json @@ -11,7 +11,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/pegasus/keyboard.json b/keyboards/pegasus/keyboard.json index 4de1631379..865833d189 100644 --- a/keyboards/pegasus/keyboard.json +++ b/keyboards/pegasus/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Pegasus", "manufacturer": "melonbred", - "url": "", "maintainer": "melonbred", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/percent/booster/keyboard.json b/keyboards/percent/booster/keyboard.json index edd9afd18d..82701646ff 100644 --- a/keyboards/percent/booster/keyboard.json +++ b/keyboards/percent/booster/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Booster", "manufacturer": "Percent Studio", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5053", diff --git a/keyboards/percent/canoe/keyboard.json b/keyboards/percent/canoe/keyboard.json index 656f73f904..354b1164d9 100644 --- a/keyboards/percent/canoe/keyboard.json +++ b/keyboards/percent/canoe/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "CANOE", "manufacturer": "Percent Studios", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5053", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/percent/canoe_gen2/keyboard.json b/keyboards/percent/canoe_gen2/keyboard.json index 85fbfd28b9..b6a8a47a5f 100644 --- a/keyboards/percent/canoe_gen2/keyboard.json +++ b/keyboards/percent/canoe_gen2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Canoe Gen2", "manufacturer": "Percent Studio", - "url": "", "maintainer": "evyd13", "usb": { "vid": "0x9C12", diff --git a/keyboards/percent/skog/keyboard.json b/keyboards/percent/skog/keyboard.json index 823c1638ac..da210410ef 100644 --- a/keyboards/percent/skog/keyboard.json +++ b/keyboards/percent/skog/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Skog TKL", "manufacturer": "Percent Studios", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5053", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/percent/skog_lite/keyboard.json b/keyboards/percent/skog_lite/keyboard.json index e52d910845..f1e925d2ea 100644 --- a/keyboards/percent/skog_lite/keyboard.json +++ b/keyboards/percent/skog_lite/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Skog Lite", "manufacturer": "Percent Studios", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5053", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/phantom/keyboard.json b/keyboards/phantom/keyboard.json index 6f2b99b2b1..79d94cce6e 100644 --- a/keyboards/phantom/keyboard.json +++ b/keyboards/phantom/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/phase_studio/titan65/hotswap/keyboard.json b/keyboards/phase_studio/titan65/hotswap/keyboard.json index 956f508701..c9d1b0f726 100644 --- a/keyboards/phase_studio/titan65/hotswap/keyboard.json +++ b/keyboards/phase_studio/titan65/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Titan 65 (hotswap)", "manufacturer": "Phase Studio", - "url": "", "maintainer": "drashna", "usb": { "vid": "0x5054", diff --git a/keyboards/phase_studio/titan65/soldered/keyboard.json b/keyboards/phase_studio/titan65/soldered/keyboard.json index c60c689932..8bb0f6f19c 100644 --- a/keyboards/phase_studio/titan65/soldered/keyboard.json +++ b/keyboards/phase_studio/titan65/soldered/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Titan 65 (soldered)", "manufacturer": "Phase Studio", - "url": "", "maintainer": "drashna", "usb": { "vid": "0x5054", diff --git a/keyboards/phdesign/phac/keyboard.json b/keyboards/phdesign/phac/keyboard.json index 660cf6c2ad..3034aaa3a0 100644 --- a/keyboards/phdesign/phac/keyboard.json +++ b/keyboards/phdesign/phac/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, @@ -24,7 +22,6 @@ ] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "2.2.0", "pid": "0x0001", diff --git a/keyboards/phentech/rpk_001/keyboard.json b/keyboards/phentech/rpk_001/keyboard.json index 0ce2993897..ce822295b2 100644 --- a/keyboards/phentech/rpk_001/keyboard.json +++ b/keyboards/phentech/rpk_001/keyboard.json @@ -2,7 +2,6 @@ "manufacturer": "HENGCANG ELECTRONIC", "keyboard_name": "RPK-001", "maintainer": "JoyLee", - "url": "", "processor": "WB32FQ95", "bootloader": "wb32-dfu", "usb": { diff --git a/keyboards/phrygian/ph100/keyboard.json b/keyboards/phrygian/ph100/keyboard.json index 3d0c611862..28ad88c98e 100644 --- a/keyboards/phrygian/ph100/keyboard.json +++ b/keyboards/phrygian/ph100/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/piantoruv44/keyboard.json b/keyboards/piantoruv44/keyboard.json index e2374dca6d..771644cb5d 100644 --- a/keyboards/piantoruv44/keyboard.json +++ b/keyboards/piantoruv44/keyboard.json @@ -8,8 +8,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/pica40/rev1/keyboard.json b/keyboards/pica40/rev1/keyboard.json index fdb4cb09b3..85c2221a13 100644 --- a/keyboards/pica40/rev1/keyboard.json +++ b/keyboards/pica40/rev1/keyboard.json @@ -8,8 +8,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "mousekey": true, "extrakey": true, "encoder": true, diff --git a/keyboards/pica40/rev2/keyboard.json b/keyboards/pica40/rev2/keyboard.json index 64b043f274..7fd2094706 100644 --- a/keyboards/pica40/rev2/keyboard.json +++ b/keyboards/pica40/rev2/keyboard.json @@ -14,8 +14,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "mousekey": true, "extrakey": true, "encoder": true, diff --git a/keyboards/picolab/frusta_fundamental/keyboard.json b/keyboards/picolab/frusta_fundamental/keyboard.json index 56c145e03c..55a049060d 100644 --- a/keyboards/picolab/frusta_fundamental/keyboard.json +++ b/keyboards/picolab/frusta_fundamental/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/pimentoso/paddino02/rev1/keyboard.json b/keyboards/pimentoso/paddino02/rev1/keyboard.json index 74f11ab7ad..b0fddff9d3 100644 --- a/keyboards/pimentoso/paddino02/rev1/keyboard.json +++ b/keyboards/pimentoso/paddino02/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Paddino02 rev1", "manufacturer": "Pimentoso", - "url": "", "maintainer": "Pimentoso", "usb": { "vid": "0xD00D", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/pimentoso/paddino02/rev2/left/keyboard.json b/keyboards/pimentoso/paddino02/rev2/left/keyboard.json index 8ba456e29e..f89552220d 100644 --- a/keyboards/pimentoso/paddino02/rev2/left/keyboard.json +++ b/keyboards/pimentoso/paddino02/rev2/left/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Paddino02 rev2 (left)", "manufacturer": "Pimentoso", - "url": "", "maintainer": "Pimentoso", "usb": { "vid": "0xD00D", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/pimentoso/paddino02/rev2/right/keyboard.json b/keyboards/pimentoso/paddino02/rev2/right/keyboard.json index 4da270119b..1148564a05 100644 --- a/keyboards/pimentoso/paddino02/rev2/right/keyboard.json +++ b/keyboards/pimentoso/paddino02/rev2/right/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Paddino02 rev2 (right)", "manufacturer": "Pimentoso", - "url": "", "maintainer": "Pimentoso", "usb": { "vid": "0xD00D", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/pimentoso/touhoupad/keyboard.json b/keyboards/pimentoso/touhoupad/keyboard.json index 3e4655abfb..fed01eb5a6 100644 --- a/keyboards/pimentoso/touhoupad/keyboard.json +++ b/keyboards/pimentoso/touhoupad/keyboard.json @@ -25,8 +25,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/pinky/3/keyboard.json b/keyboards/pinky/3/keyboard.json index 32e1f893e5..f02b6c72d0 100644 --- a/keyboards/pinky/3/keyboard.json +++ b/keyboards/pinky/3/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Pinky3", "manufacturer": "tamanishi", - "url": "", "maintainer": "tamanishi", "usb": { "vid": "0x544E", diff --git a/keyboards/pinky/4/keyboard.json b/keyboards/pinky/4/keyboard.json index 20f86e3f38..68b1dcb14c 100644 --- a/keyboards/pinky/4/keyboard.json +++ b/keyboards/pinky/4/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Pinky4", "manufacturer": "tamanishi", - "url": "", "maintainer": "tamanishi", "usb": { "vid": "0x544E", diff --git a/keyboards/pisces/keyboard.json b/keyboards/pisces/keyboard.json index 1601cbc3a9..bf98cefd16 100644 --- a/keyboards/pisces/keyboard.json +++ b/keyboards/pisces/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/pixelspace/capsule65i/keyboard.json b/keyboards/pixelspace/capsule65i/keyboard.json index f8c9dc9c1d..c12e889135 100644 --- a/keyboards/pixelspace/capsule65i/keyboard.json +++ b/keyboards/pixelspace/capsule65i/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Capsule65i", "manufacturer": "PixelSpace", - "url": "", "maintainer": "PixelSpace", "usb": { "vid": "0xE061", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/pixelspace/shadow80/keyboard.json b/keyboards/pixelspace/shadow80/keyboard.json index c7c4901745..7644c9d6ac 100644 --- a/keyboards/pixelspace/shadow80/keyboard.json +++ b/keyboards/pixelspace/shadow80/keyboard.json @@ -3,7 +3,6 @@ "processor": "STM32F103", "bootloader": "stm32duino", "manufacturer": "Here VoLand", - "url": "", "maintainer": "Here VoLand @Vem", "usb": { "vid": "0x0011", diff --git a/keyboards/pizzakeyboards/pizza65/keyboard.json b/keyboards/pizzakeyboards/pizza65/keyboard.json index ee0a68dea5..cddeb687a2 100644 --- a/keyboards/pizzakeyboards/pizza65/keyboard.json +++ b/keyboards/pizzakeyboards/pizza65/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/pjb/eros/keyboard.json b/keyboards/pjb/eros/keyboard.json index 888a6aa02c..4cca23be94 100644 --- a/keyboards/pjb/eros/keyboard.json +++ b/keyboards/pjb/eros/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/pkb65/keyboard.json b/keyboards/pkb65/keyboard.json index d645d278b7..3e590bcba6 100644 --- a/keyboards/pkb65/keyboard.json +++ b/keyboards/pkb65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "PKB65", "manufacturer": "MCKeebs", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4D43", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/planck/keymaps/default/keymap.c b/keyboards/planck/keymaps/default/keymap.c index cc8a69ceca..c08e58653a 100644 --- a/keyboards/planck/keymaps/default/keymap.c +++ b/keyboards/planck/keymaps/default/keymap.c @@ -215,9 +215,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (!eeconfig_is_enabled()) { eeconfig_init(); } - keymap_config.raw = eeconfig_read_keymap(); + eeconfig_read_keymap(&keymap_config); keymap_config.nkro = 1; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } return false; break; diff --git a/keyboards/planck/light/keyboard.json b/keyboards/planck/light/keyboard.json index dd1d69bf3c..413c753f92 100644 --- a/keyboards/planck/light/keyboard.json +++ b/keyboards/planck/light/keyboard.json @@ -60,7 +60,6 @@ "features": { "audio": true, "bootmagic": true, - "command": false, "console": true, "extrakey": true, "midi": true, diff --git a/keyboards/planck/rev1/keyboard.json b/keyboards/planck/rev1/keyboard.json index f737781a1c..1be09d866e 100644 --- a/keyboards/planck/rev1/keyboard.json +++ b/keyboards/planck/rev1/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/planck/rev2/keyboard.json b/keyboards/planck/rev2/keyboard.json index d10982f357..d87b05a974 100644 --- a/keyboards/planck/rev2/keyboard.json +++ b/keyboards/planck/rev2/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/planck/rev3/keyboard.json b/keyboards/planck/rev3/keyboard.json index 16d2b59a2e..b7e95c765f 100644 --- a/keyboards/planck/rev3/keyboard.json +++ b/keyboards/planck/rev3/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/planck/rev4/keyboard.json b/keyboards/planck/rev4/keyboard.json index 655c48e7dd..492112fa68 100644 --- a/keyboards/planck/rev4/keyboard.json +++ b/keyboards/planck/rev4/keyboard.json @@ -14,7 +14,6 @@ "features": { "audio": true, "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/planck/rev5/keyboard.json b/keyboards/planck/rev5/keyboard.json index debf8dcdfc..a251080156 100644 --- a/keyboards/planck/rev5/keyboard.json +++ b/keyboards/planck/rev5/keyboard.json @@ -14,7 +14,6 @@ "features": { "audio": true, "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/planck/rev7/keymaps/default/keymap.c b/keyboards/planck/rev7/keymaps/default/keymap.c index 47ded8aba5..6880e2fa94 100644 --- a/keyboards/planck/rev7/keymaps/default/keymap.c +++ b/keyboards/planck/rev7/keymaps/default/keymap.c @@ -255,9 +255,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (!eeconfig_is_enabled()) { eeconfig_init(); } - keymap_config.raw = eeconfig_read_keymap(); + eeconfig_read_keymap(&keymap_config); keymap_config.nkro = 1; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } return false; break; diff --git a/keyboards/playkbtw/ca66/keyboard.json b/keyboards/playkbtw/ca66/keyboard.json index d94a8d6b4d..781c39ea4b 100644 --- a/keyboards/playkbtw/ca66/keyboard.json +++ b/keyboards/playkbtw/ca66/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "CA66", "manufacturer": "Barry", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5457", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/playkbtw/helen80/keyboard.json b/keyboards/playkbtw/helen80/keyboard.json index 47f7e48ef6..038a3ee562 100644 --- a/keyboards/playkbtw/helen80/keyboard.json +++ b/keyboards/playkbtw/helen80/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Helen 80", "manufacturer": "Play Keyboard", - "url": "", "maintainer": "yj7272098", "usb": { "vid": "0x706B", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/playkbtw/pk60/keyboard.json b/keyboards/playkbtw/pk60/keyboard.json index 15de711ad1..363a835d54 100644 --- a/keyboards/playkbtw/pk60/keyboard.json +++ b/keyboards/playkbtw/pk60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "pk60", "manufacturer": "Play Keyboard", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/playkbtw/pk64rgb/keyboard.json b/keyboards/playkbtw/pk64rgb/keyboard.json index 81ac5be596..2fa3e3cb92 100644 --- a/keyboards/playkbtw/pk64rgb/keyboard.json +++ b/keyboards/playkbtw/pk64rgb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "PK64RGB", "manufacturer": "Play Keyboard", - "url": "", "maintainer": "yj7272098", "usb": { "vid": "0x706B", @@ -89,8 +88,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/pluckey/keyboard.json b/keyboards/pluckey/keyboard.json index 57f6b2467f..36705f795d 100644 --- a/keyboards/pluckey/keyboard.json +++ b/keyboards/pluckey/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/plum47/keyboard.json b/keyboards/plum47/keyboard.json index 81b87e92db..2c6e009300 100644 --- a/keyboards/plum47/keyboard.json +++ b/keyboards/plum47/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/plume/plume65/keyboard.json b/keyboards/plume/plume65/keyboard.json index 46f264e43e..21deb5a76f 100644 --- a/keyboards/plume/plume65/keyboard.json +++ b/keyboards/plume/plume65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Plume65", "manufacturer": "Plume Keyboards LLC", - "url": "", "maintainer": "evyd13", "usb": { "vid": "0x5D66", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/plut0nium/0x3e/keyboard.json b/keyboards/plut0nium/0x3e/keyboard.json index eb0a4fbe55..9c8fa386fb 100644 --- a/keyboards/plut0nium/0x3e/keyboard.json +++ b/keyboards/plut0nium/0x3e/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "0x3E", "manufacturer": "plut0nium", - "url": "", "maintainer": "plut0nium", "usb": { "vid": "0xFEED", @@ -14,8 +13,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/plx/keyboard.json b/keyboards/plx/keyboard.json index dd47ce7037..b22ee87b2a 100644 --- a/keyboards/plx/keyboard.json +++ b/keyboards/plx/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false diff --git a/keyboards/plywrks/ahgase/keyboard.json b/keyboards/plywrks/ahgase/keyboard.json index 9c1da6d579..7d50de8d77 100644 --- a/keyboards/plywrks/ahgase/keyboard.json +++ b/keyboards/plywrks/ahgase/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ahgase", "manufacturer": "plywrks", - "url": "", "maintainer": "Ramon Imbao (ramonimbao)", "usb": { "vid": "0x706C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/plywrks/allaro/keyboard.json b/keyboards/plywrks/allaro/keyboard.json index fecc15f73b..f3f5ae892b 100644 --- a/keyboards/plywrks/allaro/keyboard.json +++ b/keyboards/plywrks/allaro/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -17,7 +15,6 @@ "cols": ["F0", "F7", "F6", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1"], "rows": ["F1", "B7", "B0", "D0", "F5"] }, - "url": "", "usb": { "vid": "0x706C", "pid": "0x7903", @@ -26,8 +23,6 @@ "rgblight": { "led_count": 16, "hue_steps": 10, - "saturation_steps": 17, - "brightness_steps": 17, "animations": { "alternating": true, "breathing": true, diff --git a/keyboards/plywrks/ji_eun/keyboard.json b/keyboards/plywrks/ji_eun/keyboard.json index b470e29ebd..8bfd610f9b 100644 --- a/keyboards/plywrks/ji_eun/keyboard.json +++ b/keyboards/plywrks/ji_eun/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["D7", "B4", "B0", "D4", "D3"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "vid": "0x706C", diff --git a/keyboards/plywrks/lune/keyboard.json b/keyboards/plywrks/lune/keyboard.json index 5ec1d97c6b..af78e2cfa2 100644 --- a/keyboards/plywrks/lune/keyboard.json +++ b/keyboards/plywrks/lune/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Lune", "manufacturer": "plywrks", - "url": "", "maintainer": "ramonimbao", "usb": { "vid": "0x706C", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/plywrks/ply8x/config.h b/keyboards/plywrks/ply8x/hotswap/config.h index 3fc4de978d..3fc4de978d 100644 --- a/keyboards/plywrks/ply8x/config.h +++ b/keyboards/plywrks/ply8x/hotswap/config.h diff --git a/keyboards/plywrks/ply8x/halconf.h b/keyboards/plywrks/ply8x/hotswap/halconf.h index e215e323c5..e215e323c5 100644 --- a/keyboards/plywrks/ply8x/halconf.h +++ b/keyboards/plywrks/ply8x/hotswap/halconf.h diff --git a/keyboards/plywrks/ply8x/hotswap/keyboard.json b/keyboards/plywrks/ply8x/hotswap/keyboard.json new file mode 100644 index 0000000000..c4d3e9424e --- /dev/null +++ b/keyboards/plywrks/ply8x/hotswap/keyboard.json @@ -0,0 +1,559 @@ +{ + "manufacturer": "plywrks", + "keyboard_name": "ply8x", + "maintainer": "ramonimbao", + "bootloader": "stm32-dfu", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgb_matrix": true + }, + "matrix_pins": { + "rows": ["B2", "B1", "B0", "A7", "A10", "A2"], + "cols": ["A9", "A8", "B12", "B11", "B10", "A6", "A5", "A4", "A15", "C14", "C13", "B9", "B6", "B7", "B5", "B4", "B3"] + }, + "processor": "STM32F072", + "usb": { + "device_version": "1.0.0", + "vid": "0x706C", + "pid": "0x7915" + }, + "ws2812": { + "pin": "B15", + "driver": "spi" + }, + "rgb_matrix": { + "animations": { + "alphas_mods": true, + "gradient_up_down": true, + "gradient_left_right": true, + "breathing": true, + "band_sat": true, + "band_val": true, + "band_pinwheel_sat": true, + "band_pinwheel_val": true, + "band_spiral_sat": true, + "band_spiral_val": true, + "cycle_all": true, + "cycle_left_right": true, + "cycle_up_down": true, + "rainbow_moving_chevron": true, + "cycle_out_in": true, + "cycle_out_in_dual": true, + "cycle_pinwheel": true, + "cycle_spiral": true, + "dual_beacon": true, + "rainbow_beacon": true, + "rainbow_pinwheels": true, + "raindrops": true, + "jellybean_raindrops": true, + "hue_breathing": true, + "hue_pendulum": true, + "hue_wave": true, + "pixel_rain": true, + "pixel_flow": true, + "pixel_fractal": true, + "typing_heatmap": true, + "digital_rain": true, + "solid_reactive_simple": true, + "solid_reactive": true, + "solid_reactive_wide": true, + "solid_reactive_multiwide": true, + "solid_reactive_cross": true, + "solid_reactive_multicross": true, + "solid_reactive_nexus": true, + "solid_reactive_multinexus": true, + "splash": true, + "multisplash": true, + "solid_splash": true, + "solid_multisplash": true + }, + "driver": "ws2812", + "layout": [ + {"flags": 2, "x":224, "y":37}, + {"flags": 2, "x":224, "y":43}, + {"flags": 2, "x":218, "y":43}, + {"flags": 2, "x":218, "y":37}, + + {"flags": 2, "matrix": [0, 0], "x":0, "y": 0}, + {"flags": 2, "matrix": [0, 2], "x":26, "y": 0}, + {"flags": 2, "matrix": [0, 3], "x":38, "y": 0}, + {"flags": 2, "matrix": [0, 4], "x":51, "y": 0}, + {"flags": 2, "matrix": [0, 5], "x":64, "y": 0}, + {"flags": 2, "matrix": [0, 6], "x":83, "y": 0}, + {"flags": 2, "matrix": [0, 7], "x":96, "y": 0}, + {"flags": 2, "matrix": [0, 8], "x":109, "y": 0}, + {"flags": 2, "matrix": [0, 9], "x":122, "y": 0}, + {"flags": 2, "matrix": [0,10], "x":141, "y": 0}, + {"flags": 2, "matrix": [0,11], "x":154, "y": 0}, + {"flags": 2, "matrix": [0,12], "x":166, "y": 0}, + {"flags": 2, "matrix": [0,13], "x":179, "y": 0}, + {"flags": 2, "matrix": [0,14], "x":195, "y": 0}, + {"flags": 2, "matrix": [0,15], "x":208, "y": 0}, + {"flags": 2, "matrix": [0,16], "x":221, "y": 0}, + + {"flags": 2, "matrix": [1, 0], "x":0, "y": 15}, + {"flags": 2, "matrix": [1, 1], "x":13, "y": 15}, + {"flags": 2, "matrix": [1, 2], "x":26, "y": 15}, + {"flags": 2, "matrix": [1, 3], "x":38, "y": 15}, + {"flags": 2, "matrix": [1, 4], "x":51, "y": 15}, + {"flags": 2, "matrix": [1, 5], "x":64, "y": 15}, + {"flags": 2, "matrix": [1, 6], "x":77, "y": 15}, + {"flags": 2, "matrix": [1, 7], "x":90, "y": 15}, + {"flags": 2, "matrix": [1, 8], "x":102, "y": 15}, + {"flags": 2, "matrix": [1, 9], "x":115, "y": 15}, + {"flags": 2, "matrix": [1,10], "x":128, "y": 15}, + {"flags": 2, "matrix": [1,11], "x":141, "y": 15}, + {"flags": 2, "matrix": [1,12], "x":154, "y": 15}, + {"flags": 2, "matrix": [1,13], "x":166, "y": 15}, + {"flags": 2, "matrix": [3,13], "x":179, "y": 15}, + {"flags": 2, "matrix": [1,14], "x":195, "y": 15}, + {"flags": 2, "matrix": [1,15], "x":208, "y": 15}, + {"flags": 2, "matrix": [1,16], "x":221, "y": 15}, + + {"flags": 2, "matrix": [2, 0], "x":3, "y": 27}, + {"flags": 2, "matrix": [2, 1], "x":19, "y": 27}, + {"flags": 2, "matrix": [2, 2], "x":32, "y": 27}, + {"flags": 2, "matrix": [2, 3], "x":45, "y": 27}, + {"flags": 2, "matrix": [2, 4], "x":58, "y": 27}, + {"flags": 2, "matrix": [2, 5], "x":70, "y": 27}, + {"flags": 2, "matrix": [2, 6], "x":83, "y": 27}, + {"flags": 2, "matrix": [2, 7], "x":96, "y": 27}, + {"flags": 2, "matrix": [2, 8], "x":109, "y": 27}, + {"flags": 2, "matrix": [2, 9], "x":122, "y": 27}, + {"flags": 2, "matrix": [2,10], "x":134, "y": 27}, + {"flags": 2, "matrix": [2,11], "x":147, "y": 27}, + {"flags": 2, "matrix": [2,12], "x":160, "y": 27}, + {"flags": 2, "matrix": [2,13], "x":176, "y": 27}, + {"flags": 2, "matrix": [2,14], "x":195, "y": 27}, + {"flags": 2, "matrix": [2,15], "x":208, "y": 27}, + {"flags": 2, "matrix": [2,16], "x":221, "y": 27}, + + {"flags": 2, "matrix": [3, 0], "x":5, "y":40}, + {"flags": 2, "matrix": [3, 1], "x":23, "y": 40}, + {"flags": 2, "matrix": [3, 2], "x":36, "y": 40}, + {"flags": 2, "matrix": [3, 3], "x":49, "y": 40}, + {"flags": 2, "matrix": [3, 4], "x":62, "y": 40}, + {"flags": 2, "matrix": [3, 5], "x":75, "y": 40}, + {"flags": 2, "matrix": [3, 6], "x":88, "y": 40}, + {"flags": 2, "matrix": [3, 7], "x":101, "y": 40}, + {"flags": 2, "matrix": [3, 8], "x":114, "y": 40}, + {"flags": 2, "matrix": [3, 9], "x":127, "y": 40}, + {"flags": 2, "matrix": [3,10], "x":140, "y": 40}, + {"flags": 2, "matrix": [3,11], "x":153, "y": 40}, + {"flags": 2, "matrix": [3,12], "x":166, "y": 40}, + + {"flags": 2, "matrix": [4, 0], "x":8, "y": 52}, + {"flags": 2, "matrix": [4, 2], "x":29, "y": 52}, + {"flags": 2, "matrix": [4, 3], "x":42, "y": 52}, + {"flags": 2, "matrix": [4, 4], "x":54, "y": 52}, + {"flags": 2, "matrix": [4, 5], "x":67, "y": 52}, + {"flags": 2, "matrix": [4, 6], "x":80, "y": 52}, + {"flags": 2, "matrix": [4, 7], "x":93, "y": 52}, + {"flags": 2, "matrix": [4, 8], "x":106, "y": 52}, + {"flags": 2, "matrix": [4, 9], "x":118, "y": 52}, + {"flags": 2, "matrix": [4,10], "x":131, "y": 52}, + {"flags": 2, "matrix": [4,11], "x":144, "y": 52}, + {"flags": 2, "matrix": [4,12], "x":162, "y": 52}, + {"flags": 2, "matrix": [4,13], "x":179, "y": 52}, + {"flags": 2, "matrix": [4,15], "x":208, "y": 52}, + + {"flags": 2, "matrix": [5, 0], "x":2, "y": 64}, + {"flags": 2, "matrix": [5, 1], "x":18, "y": 64}, + {"flags": 2, "matrix": [5, 2], "x":34, "y": 64}, + {"flags": 2, "matrix": [5, 7], "x":82, "y": 64}, + {"flags": 2, "matrix": [5,11], "x":146, "y": 64}, + {"flags": 2, "matrix": [5,12], "x":162, "y": 64}, + {"flags": 2, "matrix": [5,13], "x":178, "y": 64}, + {"flags": 2, "matrix": [5,14], "x":195, "y": 64}, + {"flags": 2, "matrix": [5,15], "x":208, "y": 64}, + {"flags": 2, "matrix": [5,16], "x":221, "y": 64} + ] + }, + "community_layouts": ["tkl_ansi_tsangan", "tkl_ansi_tsangan_split_bs_rshift", "tkl_ansi_wkl", "tkl_ansi_wkl_split_bs_rshift"], + "layouts": { + "LAYOUT_tkl_ansi_tsangan": { + "layout": [ + {"matrix": [0, 0], "x":0, "y":0}, + {"matrix": [0, 2], "x":2, "y":0}, + {"matrix": [0, 3], "x":3, "y":0}, + {"matrix": [0, 4], "x":4, "y":0}, + {"matrix": [0, 5], "x":5, "y":0}, + {"matrix": [0, 6], "x":6.5, "y":0}, + {"matrix": [0, 7], "x":7.5, "y":0}, + {"matrix": [0, 8], "x":8.5, "y":0}, + {"matrix": [0, 9], "x":9.5, "y":0}, + {"matrix": [0,10], "x":11, "y":0}, + {"matrix": [0,11], "x":12, "y":0}, + {"matrix": [0,12], "x":13, "y":0}, + {"matrix": [0,13], "x":14, "y":0}, + {"matrix": [0,14], "x":15.25, "y":0}, + {"matrix": [0,15], "x":16.25, "y":0}, + {"matrix": [0,16], "x":17.25, "y":0}, + + {"matrix": [1, 0], "x":0, "y":1.25}, + {"matrix": [1, 1], "x":1, "y":1.25}, + {"matrix": [1, 2], "x":2, "y":1.25}, + {"matrix": [1, 3], "x":3, "y":1.25}, + {"matrix": [1, 4], "x":4, "y":1.25}, + {"matrix": [1, 5], "x":5, "y":1.25}, + {"matrix": [1, 6], "x":6, "y":1.25}, + {"matrix": [1, 7], "x":7, "y":1.25}, + {"matrix": [1, 8], "x":8, "y":1.25}, + {"matrix": [1, 9], "x":9, "y":1.25}, + {"matrix": [1,10], "x":10, "y":1.25}, + {"matrix": [1,11], "x":11, "y":1.25}, + {"matrix": [1,12], "x":12, "y":1.25}, + {"matrix": [1,13], "x":13, "y":1.25, "w":2}, + {"matrix": [1,14], "x":15.25, "y":1.25}, + {"matrix": [1,15], "x":16.25, "y":1.25}, + {"matrix": [1,16], "x":17.25, "y":1.25}, + + {"matrix": [2, 0], "x":0, "y":2.25, "w":1.5}, + {"matrix": [2, 1], "x":1.5, "y":2.25}, + {"matrix": [2, 2], "x":2.5, "y":2.25}, + {"matrix": [2, 3], "x":3.5, "y":2.25}, + {"matrix": [2, 4], "x":4.5, "y":2.25}, + {"matrix": [2, 5], "x":5.5, "y":2.25}, + {"matrix": [2, 6], "x":6.5, "y":2.25}, + {"matrix": [2, 7], "x":7.5, "y":2.25}, + {"matrix": [2, 8], "x":8.5, "y":2.25}, + {"matrix": [2, 9], "x":9.5, "y":2.25}, + {"matrix": [2,10], "x":10.5, "y":2.25}, + {"matrix": [2,11], "x":11.5, "y":2.25}, + {"matrix": [2,12], "x":12.5, "y":2.25}, + {"matrix": [2,13], "x":13.5, "y":2.25, "w":1.5}, + {"matrix": [2,14], "x":15.25, "y":2.25}, + {"matrix": [2,15], "x":16.25, "y":2.25}, + {"matrix": [2,16], "x":17.25, "y":2.25}, + + {"matrix": [3, 0], "x":0, "y":3.25, "w":1.75}, + {"matrix": [3, 1], "x":1.75, "y":3.25}, + {"matrix": [3, 2], "x":2.75, "y":3.25}, + {"matrix": [3, 3], "x":3.75, "y":3.25}, + {"matrix": [3, 4], "x":4.75, "y":3.25}, + {"matrix": [3, 5], "x":5.75, "y":3.25}, + {"matrix": [3, 6], "x":6.75, "y":3.25}, + {"matrix": [3, 7], "x":7.75, "y":3.25}, + {"matrix": [3, 8], "x":8.75, "y":3.25}, + {"matrix": [3, 9], "x":9.75, "y":3.25}, + {"matrix": [3,10], "x":10.75, "y":3.25}, + {"matrix": [3,11], "x":11.75, "y":3.25}, + {"matrix": [3,12], "x":12.75, "y":3.25, "w":2.25}, + + {"matrix": [4, 0], "x":0, "y":4.25, "w":2.25}, + {"matrix": [4, 2], "x":2.25, "y":4.25}, + {"matrix": [4, 3], "x":3.25, "y":4.25}, + {"matrix": [4, 4], "x":4.25, "y":4.25}, + {"matrix": [4, 5], "x":5.25, "y":4.25}, + {"matrix": [4, 6], "x":6.25, "y":4.25}, + {"matrix": [4, 7], "x":7.25, "y":4.25}, + {"matrix": [4, 8], "x":8.25, "y":4.25}, + {"matrix": [4, 9], "x":9.25, "y":4.25}, + {"matrix": [4,10], "x":10.25, "y":4.25}, + {"matrix": [4,11], "x":11.25, "y":4.25}, + {"matrix": [4,12], "x":12.25, "y":4.25, "w":2.75}, + {"matrix": [4,15], "x":16.25, "y":4.25}, + + {"matrix": [5, 0], "x":0, "y":5.25, "w":1.5}, + {"matrix": [5, 1], "x":1.5, "y":5.25}, + {"matrix": [5, 2], "x":2.5, "y":5.25, "w":1.5}, + {"matrix": [5, 7], "x":4, "y":5.25, "w":7}, + {"matrix": [5,11], "x":11, "y":5.25, "w":1.5}, + {"matrix": [5,12], "x":12.5, "y":5.25}, + {"matrix": [5,13], "x":13.5, "y":5.25, "w":1.5}, + {"matrix": [5,14], "x":15.25, "y":5.25}, + {"matrix": [5,15], "x":16.25, "y":5.25}, + {"matrix": [5,16], "x":17.25, "y":5.25} + ] + }, + "LAYOUT_tkl_ansi_tsangan_split_bs_rshift": { + "layout": [ + {"matrix": [0, 0], "x":0, "y":0}, + {"matrix": [0, 2], "x":2, "y":0}, + {"matrix": [0, 3], "x":3, "y":0}, + {"matrix": [0, 4], "x":4, "y":0}, + {"matrix": [0, 5], "x":5, "y":0}, + {"matrix": [0, 6], "x":6.5, "y":0}, + {"matrix": [0, 7], "x":7.5, "y":0}, + {"matrix": [0, 8], "x":8.5, "y":0}, + {"matrix": [0, 9], "x":9.5, "y":0}, + {"matrix": [0,10], "x":11, "y":0}, + {"matrix": [0,11], "x":12, "y":0}, + {"matrix": [0,12], "x":13, "y":0}, + {"matrix": [0,13], "x":14, "y":0}, + {"matrix": [0,14], "x":15.25, "y":0}, + {"matrix": [0,15], "x":16.25, "y":0}, + {"matrix": [0,16], "x":17.25, "y":0}, + + {"matrix": [1, 0], "x":0, "y":1.25}, + {"matrix": [1, 1], "x":1, "y":1.25}, + {"matrix": [1, 2], "x":2, "y":1.25}, + {"matrix": [1, 3], "x":3, "y":1.25}, + {"matrix": [1, 4], "x":4, "y":1.25}, + {"matrix": [1, 5], "x":5, "y":1.25}, + {"matrix": [1, 6], "x":6, "y":1.25}, + {"matrix": [1, 7], "x":7, "y":1.25}, + {"matrix": [1, 8], "x":8, "y":1.25}, + {"matrix": [1, 9], "x":9, "y":1.25}, + {"matrix": [1,10], "x":10, "y":1.25}, + {"matrix": [1,11], "x":11, "y":1.25}, + {"matrix": [1,12], "x":12, "y":1.25}, + {"matrix": [1,13], "x":13, "y":1.25}, + {"matrix": [3,13], "x":14, "y":1.25}, + {"matrix": [1,14], "x":15.25, "y":1.25}, + {"matrix": [1,15], "x":16.25, "y":1.25}, + {"matrix": [1,16], "x":17.25, "y":1.25}, + + {"matrix": [2, 0], "x":0, "y":2.25, "w":1.5}, + {"matrix": [2, 1], "x":1.5, "y":2.25}, + {"matrix": [2, 2], "x":2.5, "y":2.25}, + {"matrix": [2, 3], "x":3.5, "y":2.25}, + {"matrix": [2, 4], "x":4.5, "y":2.25}, + {"matrix": [2, 5], "x":5.5, "y":2.25}, + {"matrix": [2, 6], "x":6.5, "y":2.25}, + {"matrix": [2, 7], "x":7.5, "y":2.25}, + {"matrix": [2, 8], "x":8.5, "y":2.25}, + {"matrix": [2, 9], "x":9.5, "y":2.25}, + {"matrix": [2,10], "x":10.5, "y":2.25}, + {"matrix": [2,11], "x":11.5, "y":2.25}, + {"matrix": [2,12], "x":12.5, "y":2.25}, + {"matrix": [2,13], "x":13.5, "y":2.25, "w":1.5}, + {"matrix": [2,14], "x":15.25, "y":2.25}, + {"matrix": [2,15], "x":16.25, "y":2.25}, + {"matrix": [2,16], "x":17.25, "y":2.25}, + + {"matrix": [3, 0], "x":0, "y":3.25, "w":1.75}, + {"matrix": [3, 1], "x":1.75, "y":3.25}, + {"matrix": [3, 2], "x":2.75, "y":3.25}, + {"matrix": [3, 3], "x":3.75, "y":3.25}, + {"matrix": [3, 4], "x":4.75, "y":3.25}, + {"matrix": [3, 5], "x":5.75, "y":3.25}, + {"matrix": [3, 6], "x":6.75, "y":3.25}, + {"matrix": [3, 7], "x":7.75, "y":3.25}, + {"matrix": [3, 8], "x":8.75, "y":3.25}, + {"matrix": [3, 9], "x":9.75, "y":3.25}, + {"matrix": [3,10], "x":10.75, "y":3.25}, + {"matrix": [3,11], "x":11.75, "y":3.25}, + {"matrix": [3,12], "x":12.75, "y":3.25, "w":2.25}, + + {"matrix": [4, 0], "x":0, "y":4.25, "w":2.25}, + {"matrix": [4, 2], "x":2.25, "y":4.25}, + {"matrix": [4, 3], "x":3.25, "y":4.25}, + {"matrix": [4, 4], "x":4.25, "y":4.25}, + {"matrix": [4, 5], "x":5.25, "y":4.25}, + {"matrix": [4, 6], "x":6.25, "y":4.25}, + {"matrix": [4, 7], "x":7.25, "y":4.25}, + {"matrix": [4, 8], "x":8.25, "y":4.25}, + {"matrix": [4, 9], "x":9.25, "y":4.25}, + {"matrix": [4,10], "x":10.25, "y":4.25}, + {"matrix": [4,11], "x":11.25, "y":4.25}, + {"matrix": [4,12], "x":12.25, "y":4.25, "w":1.75}, + {"matrix": [4,13], "x":14, "y":4.25}, + {"matrix": [4,15], "x":16.25, "y":4.25}, + + {"matrix": [5, 0], "x":0, "y":5.25, "w":1.5}, + {"matrix": [5, 1], "x":1.5, "y":5.25}, + {"matrix": [5, 2], "x":2.5, "y":5.25, "w":1.5}, + {"matrix": [5, 7], "x":4, "y":5.25, "w":7}, + {"matrix": [5,11], "x":11, "y":5.25, "w":1.5}, + {"matrix": [5,12], "x":12.5, "y":5.25}, + {"matrix": [5,13], "x":13.5, "y":5.25, "w":1.5}, + {"matrix": [5,14], "x":15.25, "y":5.25}, + {"matrix": [5,15], "x":16.25, "y":5.25}, + {"matrix": [5,16], "x":17.25, "y":5.25} + ] + }, + "LAYOUT_tkl_ansi_wkl": { + "layout": [ + {"matrix": [0, 0], "x":0, "y":0}, + {"matrix": [0, 2], "x":2, "y":0}, + {"matrix": [0, 3], "x":3, "y":0}, + {"matrix": [0, 4], "x":4, "y":0}, + {"matrix": [0, 5], "x":5, "y":0}, + {"matrix": [0, 6], "x":6.5, "y":0}, + {"matrix": [0, 7], "x":7.5, "y":0}, + {"matrix": [0, 8], "x":8.5, "y":0}, + {"matrix": [0, 9], "x":9.5, "y":0}, + {"matrix": [0,10], "x":11, "y":0}, + {"matrix": [0,11], "x":12, "y":0}, + {"matrix": [0,12], "x":13, "y":0}, + {"matrix": [0,13], "x":14, "y":0}, + {"matrix": [0,14], "x":15.25, "y":0}, + {"matrix": [0,15], "x":16.25, "y":0}, + {"matrix": [0,16], "x":17.25, "y":0}, + + {"matrix": [1, 0], "x":0, "y":1.25}, + {"matrix": [1, 1], "x":1, "y":1.25}, + {"matrix": [1, 2], "x":2, "y":1.25}, + {"matrix": [1, 3], "x":3, "y":1.25}, + {"matrix": [1, 4], "x":4, "y":1.25}, + {"matrix": [1, 5], "x":5, "y":1.25}, + {"matrix": [1, 6], "x":6, "y":1.25}, + {"matrix": [1, 7], "x":7, "y":1.25}, + {"matrix": [1, 8], "x":8, "y":1.25}, + {"matrix": [1, 9], "x":9, "y":1.25}, + {"matrix": [1,10], "x":10, "y":1.25}, + {"matrix": [1,11], "x":11, "y":1.25}, + {"matrix": [1,12], "x":12, "y":1.25}, + {"matrix": [1,13], "x":13, "y":1.25, "w":2}, + {"matrix": [1,14], "x":15.25, "y":1.25}, + {"matrix": [1,15], "x":16.25, "y":1.25}, + {"matrix": [1,16], "x":17.25, "y":1.25}, + + {"matrix": [2, 0], "x":0, "y":2.25, "w":1.5}, + {"matrix": [2, 1], "x":1.5, "y":2.25}, + {"matrix": [2, 2], "x":2.5, "y":2.25}, + {"matrix": [2, 3], "x":3.5, "y":2.25}, + {"matrix": [2, 4], "x":4.5, "y":2.25}, + {"matrix": [2, 5], "x":5.5, "y":2.25}, + {"matrix": [2, 6], "x":6.5, "y":2.25}, + {"matrix": [2, 7], "x":7.5, "y":2.25}, + {"matrix": [2, 8], "x":8.5, "y":2.25}, + {"matrix": [2, 9], "x":9.5, "y":2.25}, + {"matrix": [2,10], "x":10.5, "y":2.25}, + {"matrix": [2,11], "x":11.5, "y":2.25}, + {"matrix": [2,12], "x":12.5, "y":2.25}, + {"matrix": [2,13], "x":13.5, "y":2.25, "w":1.5}, + {"matrix": [2,14], "x":15.25, "y":2.25}, + {"matrix": [2,15], "x":16.25, "y":2.25}, + {"matrix": [2,16], "x":17.25, "y":2.25}, + + {"matrix": [3, 0], "x":0, "y":3.25, "w":1.75}, + {"matrix": [3, 1], "x":1.75, "y":3.25}, + {"matrix": [3, 2], "x":2.75, "y":3.25}, + {"matrix": [3, 3], "x":3.75, "y":3.25}, + {"matrix": [3, 4], "x":4.75, "y":3.25}, + {"matrix": [3, 5], "x":5.75, "y":3.25}, + {"matrix": [3, 6], "x":6.75, "y":3.25}, + {"matrix": [3, 7], "x":7.75, "y":3.25}, + {"matrix": [3, 8], "x":8.75, "y":3.25}, + {"matrix": [3, 9], "x":9.75, "y":3.25}, + {"matrix": [3,10], "x":10.75, "y":3.25}, + {"matrix": [3,11], "x":11.75, "y":3.25}, + {"matrix": [3,12], "x":12.75, "y":3.25, "w":2.25}, + + {"matrix": [4, 0], "x":0, "y":4.25, "w":2.25}, + {"matrix": [4, 2], "x":2.25, "y":4.25}, + {"matrix": [4, 3], "x":3.25, "y":4.25}, + {"matrix": [4, 4], "x":4.25, "y":4.25}, + {"matrix": [4, 5], "x":5.25, "y":4.25}, + {"matrix": [4, 6], "x":6.25, "y":4.25}, + {"matrix": [4, 7], "x":7.25, "y":4.25}, + {"matrix": [4, 8], "x":8.25, "y":4.25}, + {"matrix": [4, 9], "x":9.25, "y":4.25}, + {"matrix": [4,10], "x":10.25, "y":4.25}, + {"matrix": [4,11], "x":11.25, "y":4.25}, + {"matrix": [4,12], "x":12.25, "y":4.25, "w":2.75}, + {"matrix": [4,15], "x":16.25, "y":4.25}, + + {"matrix": [5, 0], "x":0, "y":5.25, "w":1.5}, + {"matrix": [5, 2], "x":2.5, "y":5.25, "w":1.5}, + {"matrix": [5, 7], "x":4, "y":5.25, "w":7}, + {"matrix": [5,11], "x":11, "y":5.25, "w":1.5}, + {"matrix": [5,13], "x":13.5, "y":5.25, "w":1.5}, + {"matrix": [5,14], "x":15.25, "y":5.25}, + {"matrix": [5,15], "x":16.25, "y":5.25}, + {"matrix": [5,16], "x":17.25, "y":5.25} + ] + }, + "LAYOUT_tkl_ansi_wkl_split_bs_rshift": { + "layout": [ + {"matrix": [0, 0], "x":0, "y":0}, + {"matrix": [0, 2], "x":2, "y":0}, + {"matrix": [0, 3], "x":3, "y":0}, + {"matrix": [0, 4], "x":4, "y":0}, + {"matrix": [0, 5], "x":5, "y":0}, + {"matrix": [0, 6], "x":6.5, "y":0}, + {"matrix": [0, 7], "x":7.5, "y":0}, + {"matrix": [0, 8], "x":8.5, "y":0}, + {"matrix": [0, 9], "x":9.5, "y":0}, + {"matrix": [0,10], "x":11, "y":0}, + {"matrix": [0,11], "x":12, "y":0}, + {"matrix": [0,12], "x":13, "y":0}, + {"matrix": [0,13], "x":14, "y":0}, + {"matrix": [0,14], "x":15.25, "y":0}, + {"matrix": [0,15], "x":16.25, "y":0}, + {"matrix": [0,16], "x":17.25, "y":0}, + + {"matrix": [1, 0], "x":0, "y":1.25}, + {"matrix": [1, 1], "x":1, "y":1.25}, + {"matrix": [1, 2], "x":2, "y":1.25}, + {"matrix": [1, 3], "x":3, "y":1.25}, + {"matrix": [1, 4], "x":4, "y":1.25}, + {"matrix": [1, 5], "x":5, "y":1.25}, + {"matrix": [1, 6], "x":6, "y":1.25}, + {"matrix": [1, 7], "x":7, "y":1.25}, + {"matrix": [1, 8], "x":8, "y":1.25}, + {"matrix": [1, 9], "x":9, "y":1.25}, + {"matrix": [1,10], "x":10, "y":1.25}, + {"matrix": [1,11], "x":11, "y":1.25}, + {"matrix": [1,12], "x":12, "y":1.25}, + {"matrix": [1,13], "x":13, "y":1.25}, + {"matrix": [3,13], "x":14, "y":1.25}, + {"matrix": [1,14], "x":15.25, "y":1.25}, + {"matrix": [1,15], "x":16.25, "y":1.25}, + {"matrix": [1,16], "x":17.25, "y":1.25}, + + {"matrix": [2, 0], "x":0, "y":2.25, "w":1.5}, + {"matrix": [2, 1], "x":1.5, "y":2.25}, + {"matrix": [2, 2], "x":2.5, "y":2.25}, + {"matrix": [2, 3], "x":3.5, "y":2.25}, + {"matrix": [2, 4], "x":4.5, "y":2.25}, + {"matrix": [2, 5], "x":5.5, "y":2.25}, + {"matrix": [2, 6], "x":6.5, "y":2.25}, + {"matrix": [2, 7], "x":7.5, "y":2.25}, + {"matrix": [2, 8], "x":8.5, "y":2.25}, + {"matrix": [2, 9], "x":9.5, "y":2.25}, + {"matrix": [2,10], "x":10.5, "y":2.25}, + {"matrix": [2,11], "x":11.5, "y":2.25}, + {"matrix": [2,12], "x":12.5, "y":2.25}, + {"matrix": [2,13], "x":13.5, "y":2.25, "w":1.5}, + {"matrix": [2,14], "x":15.25, "y":2.25}, + {"matrix": [2,15], "x":16.25, "y":2.25}, + {"matrix": [2,16], "x":17.25, "y":2.25}, + + {"matrix": [3, 0], "x":0, "y":3.25, "w":1.75}, + {"matrix": [3, 1], "x":1.75, "y":3.25}, + {"matrix": [3, 2], "x":2.75, "y":3.25}, + {"matrix": [3, 3], "x":3.75, "y":3.25}, + {"matrix": [3, 4], "x":4.75, "y":3.25}, + {"matrix": [3, 5], "x":5.75, "y":3.25}, + {"matrix": [3, 6], "x":6.75, "y":3.25}, + {"matrix": [3, 7], "x":7.75, "y":3.25}, + {"matrix": [3, 8], "x":8.75, "y":3.25}, + {"matrix": [3, 9], "x":9.75, "y":3.25}, + {"matrix": [3,10], "x":10.75, "y":3.25}, + {"matrix": [3,11], "x":11.75, "y":3.25}, + {"matrix": [3,12], "x":12.75, "y":3.25, "w":2.25}, + + {"matrix": [4, 0], "x":0, "y":4.25, "w":2.25}, + {"matrix": [4, 2], "x":2.25, "y":4.25}, + {"matrix": [4, 3], "x":3.25, "y":4.25}, + {"matrix": [4, 4], "x":4.25, "y":4.25}, + {"matrix": [4, 5], "x":5.25, "y":4.25}, + {"matrix": [4, 6], "x":6.25, "y":4.25}, + {"matrix": [4, 7], "x":7.25, "y":4.25}, + {"matrix": [4, 8], "x":8.25, "y":4.25}, + {"matrix": [4, 9], "x":9.25, "y":4.25}, + {"matrix": [4,10], "x":10.25, "y":4.25}, + {"matrix": [4,11], "x":11.25, "y":4.25}, + {"matrix": [4,12], "x":12.25, "y":4.25, "w":1.75}, + {"matrix": [4,13], "x":14, "y":4.25}, + {"matrix": [4,15], "x":16.25, "y":4.25}, + + {"matrix": [5, 0], "x":0, "y":5.25, "w":1.5}, + {"matrix": [5, 2], "x":2.5, "y":5.25, "w":1.5}, + {"matrix": [5, 7], "x":4, "y":5.25, "w":7}, + {"matrix": [5,11], "x":11, "y":5.25, "w":1.5}, + {"matrix": [5,13], "x":13.5, "y":5.25, "w":1.5}, + {"matrix": [5,14], "x":15.25, "y":5.25}, + {"matrix": [5,15], "x":16.25, "y":5.25}, + {"matrix": [5,16], "x":17.25, "y":5.25} + ] + } + } +} diff --git a/keyboards/plywrks/ply8x/hotswap/keymaps/default/keymap.c b/keyboards/plywrks/ply8x/hotswap/keymaps/default/keymap.c new file mode 100644 index 0000000000..0da2588ea7 --- /dev/null +++ b/keyboards/plywrks/ply8x/hotswap/keymaps/default/keymap.c @@ -0,0 +1,32 @@ +// Copyright 2023 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* + * ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┐ + * │Esc│ │F1 │F2 │F3 │F4 │ │F5 │F6 │F7 │F8 │ │F9 │F10│F11│F12│ │PSc│Scr│Pse│ + * └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┘ + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┐ + * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ Backsp│ │Ins│Hom│PgU│ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┤ + * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ │ │Del│End│PgD│ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘ + * │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ ┌───┐ + * │ Shift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ Shift │ │ ↑ │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴───┴───┼───┴┬────┬────┤ ┌───┼───┼───┐ + * │Ctrl│GUI │Alt │ │ Alt│ GUI│Ctrl│ │ ← │ ↓ │ → │ + * └────┴────┴────┴─────────────────────────────┴────┴────┴────┘ └───┴───┴───┘ + */ + [0] = LAYOUT_tkl_ansi_tsangan( + 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_SCRL, KC_PAUS, + + 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, + 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, + 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, + 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_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ) +}; diff --git a/keyboards/plywrks/ply8x/mcuconf.h b/keyboards/plywrks/ply8x/hotswap/mcuconf.h index aceb2e3dfc..aceb2e3dfc 100644 --- a/keyboards/plywrks/ply8x/mcuconf.h +++ b/keyboards/plywrks/ply8x/hotswap/mcuconf.h diff --git a/keyboards/plywrks/ply8x/solder/config.h b/keyboards/plywrks/ply8x/solder/config.h new file mode 100644 index 0000000000..3fc4de978d --- /dev/null +++ b/keyboards/plywrks/ply8x/solder/config.h @@ -0,0 +1,10 @@ +// Copyright 2023 Ramon Imbao (@ramonimbao) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define WS2812_SPI_DRIVER SPID2 +#define WS2812_SPI_MOSI_PAL_MODE 0 +#define WS2812_SPI_SCK_PIN B13 +#define WS2812_SPI_SCK_PAL_MODE 0 +#define WS2812_EXTERNAL_PULLUP diff --git a/keyboards/plywrks/ply8x/solder/halconf.h b/keyboards/plywrks/ply8x/solder/halconf.h new file mode 100644 index 0000000000..e215e323c5 --- /dev/null +++ b/keyboards/plywrks/ply8x/solder/halconf.h @@ -0,0 +1,8 @@ +// Copyright 2023 Ramon Imbao (@ramonimbao) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define HAL_USE_SPI TRUE + +#include_next <halconf.h> diff --git a/keyboards/plywrks/ply8x/keyboard.json b/keyboards/plywrks/ply8x/solder/keyboard.json index 7c0717ade0..18cf17808a 100644 --- a/keyboards/plywrks/ply8x/keyboard.json +++ b/keyboards/plywrks/ply8x/solder/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -18,11 +16,10 @@ "cols": ["A9", "A8", "B12", "B11", "B10", "A6", "A5", "A4", "A15", "C13", "C14", "B9", "B7", "B6", "B5", "B4", "B3"] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "1.0.0", - "pid": "0x7905", - "vid": "0x706C" + "vid": "0x706C", + "pid": "0x7905" }, "ws2812": { "pin": "B15", @@ -76,12 +73,106 @@ }, "driver": "ws2812", "layout": [ - {"flags": 8, "matrix": [3, 0], "x":2, "y":27}, - {"flags": 8, "matrix": [0,15], "x":211, "y":0}, - {"flags": 2, "x":0, "y":0}, - {"flags": 2, "x":10, "y":0}, - {"flags": 2, "x":20, "y":0}, - {"flags": 2, "x":30, "y":0} + {"flags": 8, "matrix": [3, 0], "x":5, "y":40}, + {"flags": 8, "matrix": [0,15], "x":208, "y":0}, + {"flags": 2, "x":224, "y":37}, + {"flags": 2, "x":224, "y":43}, + {"flags": 2, "x":218, "y":43}, + {"flags": 2, "x":218, "y":37}, + + {"flags": 2, "matrix": [0, 0], "x":0, "y": 0}, + {"flags": 2, "matrix": [0, 2], "x":26, "y": 0}, + {"flags": 2, "matrix": [0, 3], "x":38, "y": 0}, + {"flags": 2, "matrix": [0, 4], "x":51, "y": 0}, + {"flags": 2, "matrix": [0, 5], "x":64, "y": 0}, + {"flags": 2, "matrix": [0, 6], "x":83, "y": 0}, + {"flags": 2, "matrix": [0, 7], "x":96, "y": 0}, + {"flags": 2, "matrix": [0, 8], "x":109, "y": 0}, + {"flags": 2, "matrix": [0, 9], "x":122, "y": 0}, + {"flags": 2, "matrix": [0,10], "x":141, "y": 0}, + {"flags": 2, "matrix": [0,11], "x":154, "y": 0}, + {"flags": 2, "matrix": [0,12], "x":166, "y": 0}, + {"flags": 2, "matrix": [0,13], "x":179, "y": 0}, + {"flags": 2, "matrix": [0,14], "x":195, "y": 0}, + {"flags": 2, "matrix": [0,16], "x":221, "y": 0}, + + {"flags": 2, "matrix": [1, 0], "x":0, "y": 15}, + {"flags": 2, "matrix": [1, 1], "x":13, "y": 15}, + {"flags": 2, "matrix": [1, 2], "x":26, "y": 15}, + {"flags": 2, "matrix": [1, 3], "x":38, "y": 15}, + {"flags": 2, "matrix": [1, 4], "x":51, "y": 15}, + {"flags": 2, "matrix": [1, 5], "x":64, "y": 15}, + {"flags": 2, "matrix": [1, 6], "x":77, "y": 15}, + {"flags": 2, "matrix": [1, 7], "x":90, "y": 15}, + {"flags": 2, "matrix": [1, 8], "x":102, "y": 15}, + {"flags": 2, "matrix": [1, 9], "x":115, "y": 15}, + {"flags": 2, "matrix": [1,10], "x":128, "y": 15}, + {"flags": 2, "matrix": [1,11], "x":141, "y": 15}, + {"flags": 2, "matrix": [1,12], "x":154, "y": 15}, + {"flags": 2, "matrix": [1,13], "x":166, "y": 15}, + {"flags": 2, "matrix": [3,13], "x":179, "y": 15}, + {"flags": 2, "matrix": [1,14], "x":195, "y": 15}, + {"flags": 2, "matrix": [1,15], "x":208, "y": 15}, + {"flags": 2, "matrix": [1,16], "x":221, "y": 15}, + + {"flags": 2, "matrix": [2, 0], "x":3, "y": 27}, + {"flags": 2, "matrix": [2, 1], "x":19, "y": 27}, + {"flags": 2, "matrix": [2, 2], "x":32, "y": 27}, + {"flags": 2, "matrix": [2, 3], "x":45, "y": 27}, + {"flags": 2, "matrix": [2, 4], "x":58, "y": 27}, + {"flags": 2, "matrix": [2, 5], "x":70, "y": 27}, + {"flags": 2, "matrix": [2, 6], "x":83, "y": 27}, + {"flags": 2, "matrix": [2, 7], "x":96, "y": 27}, + {"flags": 2, "matrix": [2, 8], "x":109, "y": 27}, + {"flags": 2, "matrix": [2, 9], "x":122, "y": 27}, + {"flags": 2, "matrix": [2,10], "x":134, "y": 27}, + {"flags": 2, "matrix": [2,11], "x":147, "y": 27}, + {"flags": 2, "matrix": [2,12], "x":160, "y": 27}, + {"flags": 2, "matrix": [2,13], "x":176, "y": 27}, + {"flags": 2, "matrix": [2,14], "x":195, "y": 27}, + {"flags": 2, "matrix": [2,15], "x":208, "y": 27}, + {"flags": 2, "matrix": [2,16], "x":221, "y": 27}, + + {"flags": 2, "matrix": [3, 1], "x":23, "y": 40}, + {"flags": 2, "matrix": [3, 2], "x":36, "y": 40}, + {"flags": 2, "matrix": [3, 3], "x":49, "y": 40}, + {"flags": 2, "matrix": [3, 4], "x":62, "y": 40}, + {"flags": 2, "matrix": [3, 5], "x":75, "y": 40}, + {"flags": 2, "matrix": [3, 6], "x":88, "y": 40}, + {"flags": 2, "matrix": [3, 7], "x":101, "y": 40}, + {"flags": 2, "matrix": [3, 8], "x":114, "y": 40}, + {"flags": 2, "matrix": [3, 9], "x":127, "y": 40}, + {"flags": 2, "matrix": [3,10], "x":140, "y": 40}, + {"flags": 2, "matrix": [3,11], "x":153, "y": 40}, + {"flags": 2, "matrix": [3,12], "x":166, "y": 40}, + + {"flags": 2, "matrix": [4, 0], "x":2, "y": 52}, + {"flags": 2, "matrix": [4, 1], "x":16, "y": 52}, + {"flags": 2, "matrix": [4, 2], "x":29, "y": 52}, + {"flags": 2, "matrix": [4, 3], "x":42, "y": 52}, + {"flags": 2, "matrix": [4, 4], "x":54, "y": 52}, + {"flags": 2, "matrix": [4, 5], "x":67, "y": 52}, + {"flags": 2, "matrix": [4, 6], "x":80, "y": 52}, + {"flags": 2, "matrix": [4, 7], "x":93, "y": 52}, + {"flags": 2, "matrix": [4, 8], "x":106, "y": 52}, + {"flags": 2, "matrix": [4, 9], "x":118, "y": 52}, + {"flags": 2, "matrix": [4,10], "x":131, "y": 52}, + {"flags": 2, "matrix": [4,11], "x":144, "y": 52}, + {"flags": 2, "matrix": [4,12], "x":162, "y": 52}, + {"flags": 2, "matrix": [4,13], "x":179, "y": 52}, + {"flags": 2, "matrix": [4,15], "x":208, "y": 52}, + + {"flags": 2, "matrix": [5, 0], "x":2, "y": 64}, + {"flags": 2, "matrix": [5, 1], "x":18, "y": 64}, + {"flags": 2, "matrix": [5, 2], "x":34, "y": 64}, + {"flags": 2, "matrix": [5, 6], "x":82, "y": 64}, + {"flags": 2, "matrix": [5,10], "x":130, "y": 64}, + {"flags": 2, "matrix": [5,11], "x":146, "y": 64}, + {"flags": 2, "matrix": [5,12], "x":162, "y": 64}, + {"flags": 2, "matrix": [5,13], "x":178, "y": 64}, + {"flags": 2, "matrix": [5,14], "x":195, "y": 64}, + {"flags": 2, "matrix": [5,15], "x":208, "y": 64}, + {"flags": 2, "matrix": [5,16], "x":221, "y": 64} ] }, "layout_aliases": { @@ -92,11 +183,15 @@ "tkl_ansi", "tkl_ansi_split_bs_rshift", "tkl_ansi_tsangan", + "tkl_ansi_wkl", "tkl_ansi_tsangan_split_bs_rshift", + "tkl_ansi_wkl_split_bs_rshift", "tkl_iso", "tkl_iso_split_bs_rshift", "tkl_iso_tsangan", - "tkl_iso_tsangan_split_bs_rshift" + "tkl_iso_wkl", + "tkl_iso_tsangan_split_bs_rshift", + "tkl_iso_wkl_split_bs_rshift" ], "layouts": { "LAYOUT_tkl_ansi": { @@ -388,6 +483,99 @@ {"matrix": [5,16], "x":17.25, "y":5.25} ] }, + "LAYOUT_tkl_ansi_wkl": { + "layout": [ + {"matrix": [0, 0], "x":0, "y":0}, + {"matrix": [0, 2], "x":2, "y":0}, + {"matrix": [0, 3], "x":3, "y":0}, + {"matrix": [0, 4], "x":4, "y":0}, + {"matrix": [0, 5], "x":5, "y":0}, + {"matrix": [0, 6], "x":6.5, "y":0}, + {"matrix": [0, 7], "x":7.5, "y":0}, + {"matrix": [0, 8], "x":8.5, "y":0}, + {"matrix": [0, 9], "x":9.5, "y":0}, + {"matrix": [0,10], "x":11, "y":0}, + {"matrix": [0,11], "x":12, "y":0}, + {"matrix": [0,12], "x":13, "y":0}, + {"matrix": [0,13], "x":14, "y":0}, + {"matrix": [0,14], "x":15.25, "y":0}, + {"matrix": [0,15], "x":16.25, "y":0}, + {"matrix": [0,16], "x":17.25, "y":0}, + + {"matrix": [1, 0], "x":0, "y":1.25}, + {"matrix": [1, 1], "x":1, "y":1.25}, + {"matrix": [1, 2], "x":2, "y":1.25}, + {"matrix": [1, 3], "x":3, "y":1.25}, + {"matrix": [1, 4], "x":4, "y":1.25}, + {"matrix": [1, 5], "x":5, "y":1.25}, + {"matrix": [1, 6], "x":6, "y":1.25}, + {"matrix": [1, 7], "x":7, "y":1.25}, + {"matrix": [1, 8], "x":8, "y":1.25}, + {"matrix": [1, 9], "x":9, "y":1.25}, + {"matrix": [1,10], "x":10, "y":1.25}, + {"matrix": [1,11], "x":11, "y":1.25}, + {"matrix": [1,12], "x":12, "y":1.25}, + {"matrix": [1,13], "x":13, "y":1.25, "w":2}, + {"matrix": [1,14], "x":15.25, "y":1.25}, + {"matrix": [1,15], "x":16.25, "y":1.25}, + {"matrix": [1,16], "x":17.25, "y":1.25}, + + {"matrix": [2, 0], "x":0, "y":2.25, "w":1.5}, + {"matrix": [2, 1], "x":1.5, "y":2.25}, + {"matrix": [2, 2], "x":2.5, "y":2.25}, + {"matrix": [2, 3], "x":3.5, "y":2.25}, + {"matrix": [2, 4], "x":4.5, "y":2.25}, + {"matrix": [2, 5], "x":5.5, "y":2.25}, + {"matrix": [2, 6], "x":6.5, "y":2.25}, + {"matrix": [2, 7], "x":7.5, "y":2.25}, + {"matrix": [2, 8], "x":8.5, "y":2.25}, + {"matrix": [2, 9], "x":9.5, "y":2.25}, + {"matrix": [2,10], "x":10.5, "y":2.25}, + {"matrix": [2,11], "x":11.5, "y":2.25}, + {"matrix": [2,12], "x":12.5, "y":2.25}, + {"matrix": [2,13], "x":13.5, "y":2.25, "w":1.5}, + {"matrix": [2,14], "x":15.25, "y":2.25}, + {"matrix": [2,15], "x":16.25, "y":2.25}, + {"matrix": [2,16], "x":17.25, "y":2.25}, + + {"matrix": [3, 0], "x":0, "y":3.25, "w":1.75}, + {"matrix": [3, 1], "x":1.75, "y":3.25}, + {"matrix": [3, 2], "x":2.75, "y":3.25}, + {"matrix": [3, 3], "x":3.75, "y":3.25}, + {"matrix": [3, 4], "x":4.75, "y":3.25}, + {"matrix": [3, 5], "x":5.75, "y":3.25}, + {"matrix": [3, 6], "x":6.75, "y":3.25}, + {"matrix": [3, 7], "x":7.75, "y":3.25}, + {"matrix": [3, 8], "x":8.75, "y":3.25}, + {"matrix": [3, 9], "x":9.75, "y":3.25}, + {"matrix": [3,10], "x":10.75, "y":3.25}, + {"matrix": [3,11], "x":11.75, "y":3.25}, + {"matrix": [3,12], "x":12.75, "y":3.25, "w":2.25}, + + {"matrix": [4, 0], "x":0, "y":4.25, "w":2.25}, + {"matrix": [4, 2], "x":2.25, "y":4.25}, + {"matrix": [4, 3], "x":3.25, "y":4.25}, + {"matrix": [4, 4], "x":4.25, "y":4.25}, + {"matrix": [4, 5], "x":5.25, "y":4.25}, + {"matrix": [4, 6], "x":6.25, "y":4.25}, + {"matrix": [4, 7], "x":7.25, "y":4.25}, + {"matrix": [4, 8], "x":8.25, "y":4.25}, + {"matrix": [4, 9], "x":9.25, "y":4.25}, + {"matrix": [4,10], "x":10.25, "y":4.25}, + {"matrix": [4,11], "x":11.25, "y":4.25}, + {"matrix": [4,12], "x":12.25, "y":4.25, "w":2.75}, + {"matrix": [4,15], "x":16.25, "y":4.25}, + + {"matrix": [5, 0], "x":0, "y":5.25, "w":1.5}, + {"matrix": [5, 2], "x":2.5, "y":5.25, "w":1.5}, + {"matrix": [5, 6], "x":4, "y":5.25, "w":7}, + {"matrix": [5,11], "x":11, "y":5.25, "w":1.5}, + {"matrix": [5,13], "x":13.5, "y":5.25, "w":1.5}, + {"matrix": [5,14], "x":15.25, "y":5.25}, + {"matrix": [5,15], "x":16.25, "y":5.25}, + {"matrix": [5,16], "x":17.25, "y":5.25} + ] + }, "LAYOUT_tkl_ansi_tsangan_split_bs_rshift": { "layout": [ {"matrix": [0, 0], "x":0, "y":0}, @@ -485,6 +673,101 @@ {"matrix": [5,16], "x":17.25, "y":5.25} ] }, + "LAYOUT_tkl_ansi_wkl_split_bs_rshift": { + "layout": [ + {"matrix": [0, 0], "x":0, "y":0}, + {"matrix": [0, 2], "x":2, "y":0}, + {"matrix": [0, 3], "x":3, "y":0}, + {"matrix": [0, 4], "x":4, "y":0}, + {"matrix": [0, 5], "x":5, "y":0}, + {"matrix": [0, 6], "x":6.5, "y":0}, + {"matrix": [0, 7], "x":7.5, "y":0}, + {"matrix": [0, 8], "x":8.5, "y":0}, + {"matrix": [0, 9], "x":9.5, "y":0}, + {"matrix": [0,10], "x":11, "y":0}, + {"matrix": [0,11], "x":12, "y":0}, + {"matrix": [0,12], "x":13, "y":0}, + {"matrix": [0,13], "x":14, "y":0}, + {"matrix": [0,14], "x":15.25, "y":0}, + {"matrix": [0,15], "x":16.25, "y":0}, + {"matrix": [0,16], "x":17.25, "y":0}, + + {"matrix": [1, 0], "x":0, "y":1.25}, + {"matrix": [1, 1], "x":1, "y":1.25}, + {"matrix": [1, 2], "x":2, "y":1.25}, + {"matrix": [1, 3], "x":3, "y":1.25}, + {"matrix": [1, 4], "x":4, "y":1.25}, + {"matrix": [1, 5], "x":5, "y":1.25}, + {"matrix": [1, 6], "x":6, "y":1.25}, + {"matrix": [1, 7], "x":7, "y":1.25}, + {"matrix": [1, 8], "x":8, "y":1.25}, + {"matrix": [1, 9], "x":9, "y":1.25}, + {"matrix": [1,10], "x":10, "y":1.25}, + {"matrix": [1,11], "x":11, "y":1.25}, + {"matrix": [1,12], "x":12, "y":1.25}, + {"matrix": [1,13], "x":13, "y":1.25}, + {"matrix": [3,13], "x":14, "y":1.25}, + {"matrix": [1,14], "x":15.25, "y":1.25}, + {"matrix": [1,15], "x":16.25, "y":1.25}, + {"matrix": [1,16], "x":17.25, "y":1.25}, + + {"matrix": [2, 0], "x":0, "y":2.25, "w":1.5}, + {"matrix": [2, 1], "x":1.5, "y":2.25}, + {"matrix": [2, 2], "x":2.5, "y":2.25}, + {"matrix": [2, 3], "x":3.5, "y":2.25}, + {"matrix": [2, 4], "x":4.5, "y":2.25}, + {"matrix": [2, 5], "x":5.5, "y":2.25}, + {"matrix": [2, 6], "x":6.5, "y":2.25}, + {"matrix": [2, 7], "x":7.5, "y":2.25}, + {"matrix": [2, 8], "x":8.5, "y":2.25}, + {"matrix": [2, 9], "x":9.5, "y":2.25}, + {"matrix": [2,10], "x":10.5, "y":2.25}, + {"matrix": [2,11], "x":11.5, "y":2.25}, + {"matrix": [2,12], "x":12.5, "y":2.25}, + {"matrix": [2,13], "x":13.5, "y":2.25, "w":1.5}, + {"matrix": [2,14], "x":15.25, "y":2.25}, + {"matrix": [2,15], "x":16.25, "y":2.25}, + {"matrix": [2,16], "x":17.25, "y":2.25}, + + {"matrix": [3, 0], "x":0, "y":3.25, "w":1.75}, + {"matrix": [3, 1], "x":1.75, "y":3.25}, + {"matrix": [3, 2], "x":2.75, "y":3.25}, + {"matrix": [3, 3], "x":3.75, "y":3.25}, + {"matrix": [3, 4], "x":4.75, "y":3.25}, + {"matrix": [3, 5], "x":5.75, "y":3.25}, + {"matrix": [3, 6], "x":6.75, "y":3.25}, + {"matrix": [3, 7], "x":7.75, "y":3.25}, + {"matrix": [3, 8], "x":8.75, "y":3.25}, + {"matrix": [3, 9], "x":9.75, "y":3.25}, + {"matrix": [3,10], "x":10.75, "y":3.25}, + {"matrix": [3,11], "x":11.75, "y":3.25}, + {"matrix": [3,12], "x":12.75, "y":3.25, "w":2.25}, + + {"matrix": [4, 0], "x":0, "y":4.25, "w":2.25}, + {"matrix": [4, 2], "x":2.25, "y":4.25}, + {"matrix": [4, 3], "x":3.25, "y":4.25}, + {"matrix": [4, 4], "x":4.25, "y":4.25}, + {"matrix": [4, 5], "x":5.25, "y":4.25}, + {"matrix": [4, 6], "x":6.25, "y":4.25}, + {"matrix": [4, 7], "x":7.25, "y":4.25}, + {"matrix": [4, 8], "x":8.25, "y":4.25}, + {"matrix": [4, 9], "x":9.25, "y":4.25}, + {"matrix": [4,10], "x":10.25, "y":4.25}, + {"matrix": [4,11], "x":11.25, "y":4.25}, + {"matrix": [4,12], "x":12.25, "y":4.25, "w":1.75}, + {"matrix": [4,13], "x":14, "y":4.25}, + {"matrix": [4,15], "x":16.25, "y":4.25}, + + {"matrix": [5, 0], "x":0, "y":5.25, "w":1.5}, + {"matrix": [5, 2], "x":2.5, "y":5.25, "w":1.5}, + {"matrix": [5, 6], "x":4, "y":5.25, "w":7}, + {"matrix": [5,11], "x":11, "y":5.25, "w":1.5}, + {"matrix": [5,13], "x":13.5, "y":5.25, "w":1.5}, + {"matrix": [5,14], "x":15.25, "y":5.25}, + {"matrix": [5,15], "x":16.25, "y":5.25}, + {"matrix": [5,16], "x":17.25, "y":5.25} + ] + }, "LAYOUT_tkl_iso": { "layout": [ {"matrix": [0, 0], "x":0, "y":0}, @@ -777,6 +1060,100 @@ {"matrix": [5,16], "x":17.25, "y":5.25} ] }, + "LAYOUT_tkl_iso_wkl": { + "layout": [ + {"matrix": [0, 0], "x":0, "y":0}, + {"matrix": [0, 2], "x":2, "y":0}, + {"matrix": [0, 3], "x":3, "y":0}, + {"matrix": [0, 4], "x":4, "y":0}, + {"matrix": [0, 5], "x":5, "y":0}, + {"matrix": [0, 6], "x":6.5, "y":0}, + {"matrix": [0, 7], "x":7.5, "y":0}, + {"matrix": [0, 8], "x":8.5, "y":0}, + {"matrix": [0, 9], "x":9.5, "y":0}, + {"matrix": [0,10], "x":11, "y":0}, + {"matrix": [0,11], "x":12, "y":0}, + {"matrix": [0,12], "x":13, "y":0}, + {"matrix": [0,13], "x":14, "y":0}, + {"matrix": [0,14], "x":15.25, "y":0}, + {"matrix": [0,15], "x":16.25, "y":0}, + {"matrix": [0,16], "x":17.25, "y":0}, + + {"matrix": [1, 0], "x":0, "y":1.25}, + {"matrix": [1, 1], "x":1, "y":1.25}, + {"matrix": [1, 2], "x":2, "y":1.25}, + {"matrix": [1, 3], "x":3, "y":1.25}, + {"matrix": [1, 4], "x":4, "y":1.25}, + {"matrix": [1, 5], "x":5, "y":1.25}, + {"matrix": [1, 6], "x":6, "y":1.25}, + {"matrix": [1, 7], "x":7, "y":1.25}, + {"matrix": [1, 8], "x":8, "y":1.25}, + {"matrix": [1, 9], "x":9, "y":1.25}, + {"matrix": [1,10], "x":10, "y":1.25}, + {"matrix": [1,11], "x":11, "y":1.25}, + {"matrix": [1,12], "x":12, "y":1.25}, + {"matrix": [1,13], "x":13, "y":1.25, "w":2}, + {"matrix": [1,14], "x":15.25, "y":1.25}, + {"matrix": [1,15], "x":16.25, "y":1.25}, + {"matrix": [1,16], "x":17.25, "y":1.25}, + + {"matrix": [2, 0], "x":0, "y":2.25, "w":1.5}, + {"matrix": [2, 1], "x":1.5, "y":2.25}, + {"matrix": [2, 2], "x":2.5, "y":2.25}, + {"matrix": [2, 3], "x":3.5, "y":2.25}, + {"matrix": [2, 4], "x":4.5, "y":2.25}, + {"matrix": [2, 5], "x":5.5, "y":2.25}, + {"matrix": [2, 6], "x":6.5, "y":2.25}, + {"matrix": [2, 7], "x":7.5, "y":2.25}, + {"matrix": [2, 8], "x":8.5, "y":2.25}, + {"matrix": [2, 9], "x":9.5, "y":2.25}, + {"matrix": [2,10], "x":10.5, "y":2.25}, + {"matrix": [2,11], "x":11.5, "y":2.25}, + {"matrix": [2,12], "x":12.5, "y":2.25}, + {"matrix": [2,14], "x":15.25, "y":2.25}, + {"matrix": [2,15], "x":16.25, "y":2.25}, + {"matrix": [2,16], "x":17.25, "y":2.25}, + + {"matrix": [3, 0], "x":0, "y":3.25, "w":1.75}, + {"matrix": [3, 1], "x":1.75, "y":3.25}, + {"matrix": [3, 2], "x":2.75, "y":3.25}, + {"matrix": [3, 3], "x":3.75, "y":3.25}, + {"matrix": [3, 4], "x":4.75, "y":3.25}, + {"matrix": [3, 5], "x":5.75, "y":3.25}, + {"matrix": [3, 6], "x":6.75, "y":3.25}, + {"matrix": [3, 7], "x":7.75, "y":3.25}, + {"matrix": [3, 8], "x":8.75, "y":3.25}, + {"matrix": [3, 9], "x":9.75, "y":3.25}, + {"matrix": [3,10], "x":10.75, "y":3.25}, + {"matrix": [3,11], "x":11.75, "y":3.25}, + {"matrix": [3,12], "x":12.75, "y":3.25}, + {"matrix": [2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, + + {"matrix": [4, 0], "x":0, "y":4.25, "w":1.25}, + {"matrix": [4, 1], "x":1.25, "y":4.25}, + {"matrix": [4, 2], "x":2.25, "y":4.25}, + {"matrix": [4, 3], "x":3.25, "y":4.25}, + {"matrix": [4, 4], "x":4.25, "y":4.25}, + {"matrix": [4, 5], "x":5.25, "y":4.25}, + {"matrix": [4, 6], "x":6.25, "y":4.25}, + {"matrix": [4, 7], "x":7.25, "y":4.25}, + {"matrix": [4, 8], "x":8.25, "y":4.25}, + {"matrix": [4, 9], "x":9.25, "y":4.25}, + {"matrix": [4,10], "x":10.25, "y":4.25}, + {"matrix": [4,11], "x":11.25, "y":4.25}, + {"matrix": [4,12], "x":12.25, "y":4.25, "w":2.75}, + {"matrix": [4,15], "x":16.25, "y":4.25}, + + {"matrix": [5, 0], "x":0, "y":5.25, "w":1.5}, + {"matrix": [5, 2], "x":2.5, "y":5.25, "w":1.5}, + {"matrix": [5, 6], "x":4, "y":5.25, "w":7}, + {"matrix": [5,11], "x":11, "y":5.25, "w":1.5}, + {"matrix": [5,13], "x":13.5, "y":5.25, "w":1.5}, + {"matrix": [5,14], "x":15.25, "y":5.25}, + {"matrix": [5,15], "x":16.25, "y":5.25}, + {"matrix": [5,16], "x":17.25, "y":5.25} + ] + }, "LAYOUT_tkl_iso_tsangan_split_bs_rshift": { "layout": [ {"matrix": [0, 0], "x":0, "y":0}, @@ -875,6 +1252,102 @@ {"matrix": [5,16], "x":17.25, "y":5.25} ] }, + "LAYOUT_tkl_iso_wkl_split_bs_rshift": { + "layout": [ + {"matrix": [0, 0], "x":0, "y":0}, + {"matrix": [0, 2], "x":2, "y":0}, + {"matrix": [0, 3], "x":3, "y":0}, + {"matrix": [0, 4], "x":4, "y":0}, + {"matrix": [0, 5], "x":5, "y":0}, + {"matrix": [0, 6], "x":6.5, "y":0}, + {"matrix": [0, 7], "x":7.5, "y":0}, + {"matrix": [0, 8], "x":8.5, "y":0}, + {"matrix": [0, 9], "x":9.5, "y":0}, + {"matrix": [0,10], "x":11, "y":0}, + {"matrix": [0,11], "x":12, "y":0}, + {"matrix": [0,12], "x":13, "y":0}, + {"matrix": [0,13], "x":14, "y":0}, + {"matrix": [0,14], "x":15.25, "y":0}, + {"matrix": [0,15], "x":16.25, "y":0}, + {"matrix": [0,16], "x":17.25, "y":0}, + + {"matrix": [1, 0], "x":0, "y":1.25}, + {"matrix": [1, 1], "x":1, "y":1.25}, + {"matrix": [1, 2], "x":2, "y":1.25}, + {"matrix": [1, 3], "x":3, "y":1.25}, + {"matrix": [1, 4], "x":4, "y":1.25}, + {"matrix": [1, 5], "x":5, "y":1.25}, + {"matrix": [1, 6], "x":6, "y":1.25}, + {"matrix": [1, 7], "x":7, "y":1.25}, + {"matrix": [1, 8], "x":8, "y":1.25}, + {"matrix": [1, 9], "x":9, "y":1.25}, + {"matrix": [1,10], "x":10, "y":1.25}, + {"matrix": [1,11], "x":11, "y":1.25}, + {"matrix": [1,12], "x":12, "y":1.25}, + {"matrix": [1,13], "x":13, "y":1.25}, + {"matrix": [3,13], "x":14, "y":1.25}, + {"matrix": [1,14], "x":15.25, "y":1.25}, + {"matrix": [1,15], "x":16.25, "y":1.25}, + {"matrix": [1,16], "x":17.25, "y":1.25}, + + {"matrix": [2, 0], "x":0, "y":2.25, "w":1.5}, + {"matrix": [2, 1], "x":1.5, "y":2.25}, + {"matrix": [2, 2], "x":2.5, "y":2.25}, + {"matrix": [2, 3], "x":3.5, "y":2.25}, + {"matrix": [2, 4], "x":4.5, "y":2.25}, + {"matrix": [2, 5], "x":5.5, "y":2.25}, + {"matrix": [2, 6], "x":6.5, "y":2.25}, + {"matrix": [2, 7], "x":7.5, "y":2.25}, + {"matrix": [2, 8], "x":8.5, "y":2.25}, + {"matrix": [2, 9], "x":9.5, "y":2.25}, + {"matrix": [2,10], "x":10.5, "y":2.25}, + {"matrix": [2,11], "x":11.5, "y":2.25}, + {"matrix": [2,12], "x":12.5, "y":2.25}, + {"matrix": [2,14], "x":15.25, "y":2.25}, + {"matrix": [2,15], "x":16.25, "y":2.25}, + {"matrix": [2,16], "x":17.25, "y":2.25}, + + {"matrix": [3, 0], "x":0, "y":3.25, "w":1.75}, + {"matrix": [3, 1], "x":1.75, "y":3.25}, + {"matrix": [3, 2], "x":2.75, "y":3.25}, + {"matrix": [3, 3], "x":3.75, "y":3.25}, + {"matrix": [3, 4], "x":4.75, "y":3.25}, + {"matrix": [3, 5], "x":5.75, "y":3.25}, + {"matrix": [3, 6], "x":6.75, "y":3.25}, + {"matrix": [3, 7], "x":7.75, "y":3.25}, + {"matrix": [3, 8], "x":8.75, "y":3.25}, + {"matrix": [3, 9], "x":9.75, "y":3.25}, + {"matrix": [3,10], "x":10.75, "y":3.25}, + {"matrix": [3,11], "x":11.75, "y":3.25}, + {"matrix": [3,12], "x":12.75, "y":3.25}, + {"matrix": [2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, + + {"matrix": [4, 0], "x":0, "y":4.25, "w":1.25}, + {"matrix": [4, 1], "x":1.25, "y":4.25}, + {"matrix": [4, 2], "x":2.25, "y":4.25}, + {"matrix": [4, 3], "x":3.25, "y":4.25}, + {"matrix": [4, 4], "x":4.25, "y":4.25}, + {"matrix": [4, 5], "x":5.25, "y":4.25}, + {"matrix": [4, 6], "x":6.25, "y":4.25}, + {"matrix": [4, 7], "x":7.25, "y":4.25}, + {"matrix": [4, 8], "x":8.25, "y":4.25}, + {"matrix": [4, 9], "x":9.25, "y":4.25}, + {"matrix": [4,10], "x":10.25, "y":4.25}, + {"matrix": [4,11], "x":11.25, "y":4.25}, + {"matrix": [4,12], "x":12.25, "y":4.25, "w":1.75}, + {"matrix": [4,13], "x":14, "y":4.25}, + {"matrix": [4,15], "x":16.25, "y":4.25}, + + {"matrix": [5, 0], "x":0, "y":5.25, "w":1.5}, + {"matrix": [5, 2], "x":2.5, "y":5.25, "w":1.5}, + {"matrix": [5, 6], "x":4, "y":5.25, "w":7}, + {"matrix": [5,11], "x":11, "y":5.25, "w":1.5}, + {"matrix": [5,13], "x":13.5, "y":5.25, "w":1.5}, + {"matrix": [5,14], "x":15.25, "y":5.25}, + {"matrix": [5,15], "x":16.25, "y":5.25}, + {"matrix": [5,16], "x":17.25, "y":5.25} + ] + }, "LAYOUT_all": { "layout": [ {"matrix": [0, 0], "x":0, "y":0}, diff --git a/keyboards/plywrks/ply8x/keymaps/default/keymap.c b/keyboards/plywrks/ply8x/solder/keymaps/default/keymap.c index 4ca5b29581..4ca5b29581 100644 --- a/keyboards/plywrks/ply8x/keymaps/default/keymap.c +++ b/keyboards/plywrks/ply8x/solder/keymaps/default/keymap.c diff --git a/keyboards/plywrks/ply8x/solder/mcuconf.h b/keyboards/plywrks/ply8x/solder/mcuconf.h new file mode 100644 index 0000000000..aceb2e3dfc --- /dev/null +++ b/keyboards/plywrks/ply8x/solder/mcuconf.h @@ -0,0 +1,9 @@ +// Copyright 2023 Ramon Imbao (@ramonimbao) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include_next <mcuconf.h> + +#undef STM32_SPI_USE_SPI2 +#define STM32_SPI_USE_SPI2 TRUE diff --git a/keyboards/pmk/posey_split/v4/keyboard.json b/keyboards/pmk/posey_split/v4/keyboard.json index e27991783d..d9f165286a 100644 --- a/keyboards/pmk/posey_split/v4/keyboard.json +++ b/keyboards/pmk/posey_split/v4/keyboard.json @@ -10,8 +10,6 @@ "features": { "bootmagic": true, "rgblight": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/pmk/posey_split/v5/keyboard.json b/keyboards/pmk/posey_split/v5/keyboard.json index 02c04dbba2..cc2c8f2461 100644 --- a/keyboards/pmk/posey_split/v5/keyboard.json +++ b/keyboards/pmk/posey_split/v5/keyboard.json @@ -10,8 +10,6 @@ "features": { "bootmagic": true, "rgblight": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/pohjolaworks/louhi/keyboard.json b/keyboards/pohjolaworks/louhi/keyboard.json index 90d7a96433..be00368632 100644 --- a/keyboards/pohjolaworks/louhi/keyboard.json +++ b/keyboards/pohjolaworks/louhi/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/poker87c/keyboard.json b/keyboards/poker87c/keyboard.json index ab626c8be9..ac682d926c 100644 --- a/keyboards/poker87c/keyboard.json +++ b/keyboards/poker87c/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "POKER-87C Hotswap", "manufacturer": "mfkiiyd", - "url": "", "maintainer": "mfkiiyd", "usb": { "vid": "0x6D66", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/poker87d/keyboard.json b/keyboards/poker87d/keyboard.json index 61710aac2c..42c89ef1fd 100644 --- a/keyboards/poker87d/keyboard.json +++ b/keyboards/poker87d/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "POKER-87D Hotswap", "manufacturer": "mfkiiyd", - "url": "", "maintainer": "mfkiiyd", "usb": { "vid": "0x6D66", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/polilla/rev1/keyboard.json b/keyboards/polilla/rev1/keyboard.json index 746f47963e..049b21a178 100644 --- a/keyboards/polilla/rev1/keyboard.json +++ b/keyboards/polilla/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Polilla", "manufacturer": "elagil", - "url": "", "maintainer": "elagil", "usb": { "vid": "0x6166", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/polycarbdiet/s20/keyboard.json b/keyboards/polycarbdiet/s20/keyboard.json index f87429b4a7..e8b180b860 100644 --- a/keyboards/polycarbdiet/s20/keyboard.json +++ b/keyboards/polycarbdiet/s20/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "S20 revA", "manufacturer": "polycarbdiet", - "url": "", "maintainer": "polycarbdiet", "usb": { "vid": "0x5040", @@ -12,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/pom_keyboards/tnln95/keyboard.json b/keyboards/pom_keyboards/tnln95/keyboard.json index 09b3f71f7c..61ec5f956e 100644 --- a/keyboards/pom_keyboards/tnln95/keyboard.json +++ b/keyboards/pom_keyboards/tnln95/keyboard.json @@ -14,8 +14,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/portal_66/hotswap/keyboard.json b/keyboards/portal_66/hotswap/keyboard.json index 266ca516ec..8bbee2d56a 100644 --- a/keyboards/portal_66/hotswap/keyboard.json +++ b/keyboards/portal_66/hotswap/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/portal_66/soldered/keyboard.json b/keyboards/portal_66/soldered/keyboard.json index 369a6efa13..063176c735 100644 --- a/keyboards/portal_66/soldered/keyboard.json +++ b/keyboards/portal_66/soldered/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/pos78/keyboard.json b/keyboards/pos78/keyboard.json index 0a6a814155..a4cad0124e 100644 --- a/keyboards/pos78/keyboard.json +++ b/keyboards/pos78/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/preonic/rev1/keyboard.json b/keyboards/preonic/rev1/keyboard.json index 648dafe576..705ccbfc22 100644 --- a/keyboards/preonic/rev1/keyboard.json +++ b/keyboards/preonic/rev1/keyboard.json @@ -13,8 +13,6 @@ "audio": true, "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/preonic/rev2/keyboard.json b/keyboards/preonic/rev2/keyboard.json index d24c3db42f..112785f360 100644 --- a/keyboards/preonic/rev2/keyboard.json +++ b/keyboards/preonic/rev2/keyboard.json @@ -13,7 +13,6 @@ "audio": true, "backlight": true, "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/primekb/meridian_rgb/keyboard.json b/keyboards/primekb/meridian_rgb/keyboard.json index 145d4eeb8b..f1ca86dfea 100644 --- a/keyboards/primekb/meridian_rgb/keyboard.json +++ b/keyboards/primekb/meridian_rgb/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/primekb/prime_e/info.json b/keyboards/primekb/prime_e/info.json index e7ed77e403..4aaef804af 100644 --- a/keyboards/primekb/prime_e/info.json +++ b/keyboards/primekb/prime_e/info.json @@ -7,8 +7,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/primekb/prime_l/info.json b/keyboards/primekb/prime_l/info.json index ed905f2b0b..1f526e9587 100644 --- a/keyboards/primekb/prime_l/info.json +++ b/keyboards/primekb/prime_l/info.json @@ -4,8 +4,6 @@ "maintainer": "MxBlu", "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/primekb/prime_m/keyboard.json b/keyboards/primekb/prime_m/keyboard.json index eb06dcdb7e..1f43a8b1dc 100644 --- a/keyboards/primekb/prime_m/keyboard.json +++ b/keyboards/primekb/prime_m/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/primekb/prime_o/keyboard.json b/keyboards/primekb/prime_o/keyboard.json index 04da8ab134..e440075537 100644 --- a/keyboards/primekb/prime_o/keyboard.json +++ b/keyboards/primekb/prime_o/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/primekb/prime_r/keyboard.json b/keyboards/primekb/prime_r/keyboard.json index b2a7ecec7a..e6738a6dde 100644 --- a/keyboards/primekb/prime_r/keyboard.json +++ b/keyboards/primekb/prime_r/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Prime_R", "manufacturer": "PrimeKB", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/printedpad/keyboard.json b/keyboards/printedpad/keyboard.json index 90a42c7313..0dca5da74d 100644 --- a/keyboards/printedpad/keyboard.json +++ b/keyboards/printedpad/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -18,7 +16,6 @@ "rows": ["A10", "C9", "A8", "A9"] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/program_yoink/ortho/keyboard.json b/keyboards/program_yoink/ortho/keyboard.json index e9d5fd3e80..2d50640a41 100644 --- a/keyboards/program_yoink/ortho/keyboard.json +++ b/keyboards/program_yoink/ortho/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Program Yoink! Ortho", "manufacturer": "melonbred", - "url": "", "maintainer": "melonbred", "usb": { "vid": "0x7079", diff --git a/keyboards/program_yoink/staggered/keyboard.json b/keyboards/program_yoink/staggered/keyboard.json index c20e2c9fc7..82f41d8e27 100644 --- a/keyboards/program_yoink/staggered/keyboard.json +++ b/keyboards/program_yoink/staggered/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Program Yoink! Staggered", "manufacturer": "melonbred", - "url": "", "maintainer": "melonbred", "usb": { "vid": "0x7079", diff --git a/keyboards/projectcain/relic/keyboard.json b/keyboards/projectcain/relic/keyboard.json index f9df6770d1..428240f923 100644 --- a/keyboards/projectcain/relic/keyboard.json +++ b/keyboards/projectcain/relic/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Relic", "manufacturer": "projectcain", - "url": "", "maintainer": "projectcain", "usb": { "vid": "0xFEED", diff --git a/keyboards/projectcain/vault45/keyboard.json b/keyboards/projectcain/vault45/keyboard.json index 2ab3e010e7..6131ae0305 100644 --- a/keyboards/projectcain/vault45/keyboard.json +++ b/keyboards/projectcain/vault45/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Vault45", "manufacturer": "projectcain", - "url": "", "maintainer": "projectcain", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/projectd/65/projectd_65_ansi/keyboard.json b/keyboards/projectd/65/projectd_65_ansi/keyboard.json index 32a95f965e..d3deca8c29 100644 --- a/keyboards/projectd/65/projectd_65_ansi/keyboard.json +++ b/keyboards/projectd/65/projectd_65_ansi/keyboard.json @@ -19,8 +19,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -161,7 +159,6 @@ ], "sleep": true }, - "url": "", "usb": { "device_version": "0.0.4", "pid": "0x5319", diff --git a/keyboards/projectd/75/ansi/keyboard.json b/keyboards/projectd/75/ansi/keyboard.json index d94db22bfc..9ebc5f3868 100644 --- a/keyboards/projectd/75/ansi/keyboard.json +++ b/keyboards/projectd/75/ansi/keyboard.json @@ -19,8 +19,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -182,7 +180,6 @@ ], "sleep": true }, - "url": "", "usb": { "device_version": "0.0.2", "pid": "0x000F", diff --git a/keyboards/projectd/75/iso/keyboard.json b/keyboards/projectd/75/iso/keyboard.json index d42e8c4b33..15ff587adb 100644 --- a/keyboards/projectd/75/iso/keyboard.json +++ b/keyboards/projectd/75/iso/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -176,7 +174,6 @@ { "flags": 4, "matrix": [0, 5], "x": 152, "y": 52 } ] }, - "url": "", "usb": { "device_version": "0.0.2", "pid": "0x0011", diff --git a/keyboards/projectkb/signature65/keyboard.json b/keyboards/projectkb/signature65/keyboard.json index b72ff9926c..e771c63e81 100644 --- a/keyboards/projectkb/signature65/keyboard.json +++ b/keyboards/projectkb/signature65/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/projectkb/signature87/keyboard.json b/keyboards/projectkb/signature87/keyboard.json index 2b18bf4572..adb3fd5fd7 100644 --- a/keyboards/projectkb/signature87/keyboard.json +++ b/keyboards/projectkb/signature87/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Signature87", "manufacturer": "Project Keyboard", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x0159", diff --git a/keyboards/prototypist/allison/keyboard.json b/keyboards/prototypist/allison/keyboard.json index ea80e853bf..33bd904195 100644 --- a/keyboards/prototypist/allison/keyboard.json +++ b/keyboards/prototypist/allison/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/prototypist/allison_numpad/keyboard.json b/keyboards/prototypist/allison_numpad/keyboard.json index a995cd6bbf..e2360c99d4 100644 --- a/keyboards/prototypist/allison_numpad/keyboard.json +++ b/keyboards/prototypist/allison_numpad/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/prototypist/j01/keyboard.json b/keyboards/prototypist/j01/keyboard.json index 68296e1b77..bafbba0bc8 100644 --- a/keyboards/prototypist/j01/keyboard.json +++ b/keyboards/prototypist/j01/keyboard.json @@ -14,8 +14,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/prototypist/oceanographer/keyboard.json b/keyboards/prototypist/oceanographer/keyboard.json index 8b0209d451..f76980499e 100644 --- a/keyboards/prototypist/oceanographer/keyboard.json +++ b/keyboards/prototypist/oceanographer/keyboard.json @@ -29,8 +29,6 @@ "led_count": 3, "sleep": true, "hue_steps": 10, - "saturation_steps": 17, - "brightness_steps": 17, "max_brightness": 155, "animations": { "alternating": true, @@ -49,7 +47,6 @@ "rows": ["B0", "D5", "D3", "D2"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0002", diff --git a/keyboards/prototypist/pt60/keyboard.json b/keyboards/prototypist/pt60/keyboard.json index 8018350e6f..4768a28d90 100644 --- a/keyboards/prototypist/pt60/keyboard.json +++ b/keyboards/prototypist/pt60/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["B0", "B1", "B2", "B10", "B11"] }, "processor": "STM32F303", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/prototypist/pt80/keyboard.json b/keyboards/prototypist/pt80/keyboard.json index cb58643e3f..311bfd2670 100644 --- a/keyboards/prototypist/pt80/keyboard.json +++ b/keyboards/prototypist/pt80/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["B14", "A8", "A9", "B13", "B11", "B12"] }, "processor": "STM32F303", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0000", diff --git a/keyboards/protozoa/event_horizon/keyboard.json b/keyboards/protozoa/event_horizon/keyboard.json index 42482c09ba..29c7c94fb9 100644 --- a/keyboards/protozoa/event_horizon/keyboard.json +++ b/keyboards/protozoa/event_horizon/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/psuieee/pluto12/keyboard.json b/keyboards/psuieee/pluto12/keyboard.json index 382d9fe030..02db5bc0a1 100644 --- a/keyboards/psuieee/pluto12/keyboard.json +++ b/keyboards/psuieee/pluto12/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/pteron36/keyboard.json b/keyboards/pteron36/keyboard.json index 2000593e62..783e1e8db0 100644 --- a/keyboards/pteron36/keyboard.json +++ b/keyboards/pteron36/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Pteron36", "manufacturer": "Harshit Goel", - "url": "", "maintainer": "harshitgoel96", "usb": { "vid": "0x4847", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/pteropus/keyboard.json b/keyboards/pteropus/keyboard.json index 76cbe67eee..12bb0e9667 100644 --- a/keyboards/pteropus/keyboard.json +++ b/keyboards/pteropus/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["B10", "B2", "B1", "B0"] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0000", diff --git a/keyboards/puck/keyboard.json b/keyboards/puck/keyboard.json index 4ec04d72be..35493d4a64 100644 --- a/keyboards/puck/keyboard.json +++ b/keyboards/puck/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Puck", "manufacturer": "OkKeebs LLC", - "url": "", "maintainer": "john-pettigrew", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/punk75/keyboard.json b/keyboards/punk75/keyboard.json index c7082e564f..62501a885c 100644 --- a/keyboards/punk75/keyboard.json +++ b/keyboards/punk75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "punk75", "manufacturer": "dsanchezseco", - "url": "", "maintainer": "dsanchezseco", "usb": { "vid": "0xDEED", diff --git a/keyboards/purin/keyboard.json b/keyboards/purin/keyboard.json index 08a8b06e34..7e06f2ede9 100644 --- a/keyboards/purin/keyboard.json +++ b/keyboards/purin/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["F6", "F7", "D4", "D5", "D3"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0000", diff --git a/keyboards/qck75/v1/keyboard.json b/keyboards/qck75/v1/keyboard.json index a8ae853ab3..d97a719a52 100644 --- a/keyboards/qck75/v1/keyboard.json +++ b/keyboards/qck75/v1/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, @@ -25,7 +23,6 @@ "rows": ["C3", "A0", "A1", "A2", "B10", "A15"] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0001", diff --git a/keyboards/qpockets/eggman/keyboard.json b/keyboards/qpockets/eggman/keyboard.json index 32cb76fc88..14f8a79b0a 100644 --- a/keyboards/qpockets/eggman/keyboard.json +++ b/keyboards/qpockets/eggman/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "eggman", "manufacturer": "qpockets", - "url": "", "maintainer": "qpockets", "usb": { "vid": "0x7170", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/qpockets/space_space/rev1/keyboard.json b/keyboards/qpockets/space_space/rev1/keyboard.json index cc8cda49a8..5284230e61 100644 --- a/keyboards/qpockets/space_space/rev1/keyboard.json +++ b/keyboards/qpockets/space_space/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "space_space", "manufacturer": "qpockets", - "url": "", "maintainer": "qpockets", "usb": { "vid": "0x7170", diff --git a/keyboards/qpockets/space_space/rev2/keyboard.json b/keyboards/qpockets/space_space/rev2/keyboard.json index e2f24032a3..7374ed4728 100644 --- a/keyboards/qpockets/space_space/rev2/keyboard.json +++ b/keyboards/qpockets/space_space/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "space_space", "manufacturer": "qpockets", - "url": "", "maintainer": "qpockets", "usb": { "vid": "0x7170", diff --git a/keyboards/qpockets/wanten/keyboard.json b/keyboards/qpockets/wanten/keyboard.json index 86bfe02300..d1b6d8b6a6 100644 --- a/keyboards/qpockets/wanten/keyboard.json +++ b/keyboards/qpockets/wanten/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "wanten", "manufacturer": "qpockets", - "url": "", "maintainer": "qpockets", "usb": { "vid": "0x7170", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/quad_h/lb75/keyboard.json b/keyboards/quad_h/lb75/keyboard.json index e88ba4b3a4..d205ecbc27 100644 --- a/keyboards/quad_h/lb75/keyboard.json +++ b/keyboards/quad_h/lb75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "LB75", "manufacturer": "QUADH", - "url": "", "maintainer": "ai03", "usb": { "vid": "0xA103", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/quadrum/delta/keyboard.json b/keyboards/quadrum/delta/keyboard.json index bfdc0afd62..0c218b2d8a 100644 --- a/keyboards/quadrum/delta/keyboard.json +++ b/keyboards/quadrum/delta/keyboard.json @@ -9,7 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, @@ -21,7 +20,6 @@ "rows": ["F5", "F4", "F1", "F0", "D2"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0002", diff --git a/keyboards/quantrik/kyuu/keyboard.json b/keyboards/quantrik/kyuu/keyboard.json index 5827f08d21..b7a2a01807 100644 --- a/keyboards/quantrik/kyuu/keyboard.json +++ b/keyboards/quantrik/kyuu/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Kyuu", "manufacturer": "Quantrik", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5154", diff --git a/keyboards/quarkeys/z40/keyboard.json b/keyboards/quarkeys/z40/keyboard.json index fb945dba5a..05d81e5b6f 100644 --- a/keyboards/quarkeys/z40/keyboard.json +++ b/keyboards/quarkeys/z40/keyboard.json @@ -54,8 +54,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/quarkeys/z60/hotswap/keyboard.json b/keyboards/quarkeys/z60/hotswap/keyboard.json index c586d62ef4..6034f3b909 100644 --- a/keyboards/quarkeys/z60/hotswap/keyboard.json +++ b/keyboards/quarkeys/z60/hotswap/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/quarkeys/z60/solder/keyboard.json b/keyboards/quarkeys/z60/solder/keyboard.json index e85f7e6dc8..d0801e40ca 100644 --- a/keyboards/quarkeys/z60/solder/keyboard.json +++ b/keyboards/quarkeys/z60/solder/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/quarkeys/z67/hotswap/keyboard.json b/keyboards/quarkeys/z67/hotswap/keyboard.json index 266a9a879e..7bee5ee3de 100644 --- a/keyboards/quarkeys/z67/hotswap/keyboard.json +++ b/keyboards/quarkeys/z67/hotswap/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/quarkeys/z67/solder/keyboard.json b/keyboards/quarkeys/z67/solder/keyboard.json index c1e1412d21..10d216e54c 100644 --- a/keyboards/quarkeys/z67/solder/keyboard.json +++ b/keyboards/quarkeys/z67/solder/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/qvex/lynepad/keyboard.json b/keyboards/qvex/lynepad/keyboard.json index 65afceb26a..a408e81f86 100644 --- a/keyboards/qvex/lynepad/keyboard.json +++ b/keyboards/qvex/lynepad/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/qwertlekeys/calice/keyboard.json b/keyboards/qwertlekeys/calice/keyboard.json index 676ca7a433..c2c22b8317 100644 --- a/keyboards/qwertlekeys/calice/keyboard.json +++ b/keyboards/qwertlekeys/calice/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Calice", "manufacturer": "QwertleKeys", - "url": "", "maintainer": "Jels02", "usb": { "vid": "0x716B", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/qwertykeys/qk65/hotswap/keyboard.json b/keyboards/qwertykeys/qk65/hotswap/keyboard.json index 7c786a7038..3aa8597626 100644 --- a/keyboards/qwertykeys/qk65/hotswap/keyboard.json +++ b/keyboards/qwertykeys/qk65/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "QK65 Hotswap", "manufacturer": "qwertykeys", - "url": "", "maintainer": "qwertykeys", "usb": { "vid": "0x4F53", @@ -11,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/qwertykeys/qk65/solder/keyboard.json b/keyboards/qwertykeys/qk65/solder/keyboard.json index b1795474d3..0d02ba7a91 100644 --- a/keyboards/qwertykeys/qk65/solder/keyboard.json +++ b/keyboards/qwertykeys/qk65/solder/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "QK65 Solder", "manufacturer": "qwertykeys", - "url": "", "maintainer": "qwertykeys", "usb": { "vid": "0x4F53", @@ -11,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/qwertyydox/rev1/keyboard.json b/keyboards/qwertyydox/rev1/keyboard.json index 24284ff8c0..0010f9f7e8 100644 --- a/keyboards/qwertyydox/rev1/keyboard.json +++ b/keyboards/qwertyydox/rev1/keyboard.json @@ -2,7 +2,6 @@ "keyboard_name": "QWERTYYdox", "manufacturer": "AYDENandDAD Youtube", "identifier": "0x1256", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xCEEB", diff --git a/keyboards/rabbit/rabbit68/keyboard.json b/keyboards/rabbit/rabbit68/keyboard.json index ce35a7d3c2..016e453199 100644 --- a/keyboards/rabbit/rabbit68/keyboard.json +++ b/keyboards/rabbit/rabbit68/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Rabbit68", "manufacturer": "Kai Eckert", - "url": "", "maintainer": "kaiec", "usb": { "vid": "0xFEED", diff --git a/keyboards/rad/keyboard.json b/keyboards/rad/keyboard.json index 0d86f25275..848035b785 100644 --- a/keyboards/rad/keyboard.json +++ b/keyboards/rad/keyboard.json @@ -8,8 +8,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/rainkeebs/delilah/keyboard.json b/keyboards/rainkeebs/delilah/keyboard.json index bd3d142741..a0f4bb9124 100644 --- a/keyboards/rainkeebs/delilah/keyboard.json +++ b/keyboards/rainkeebs/delilah/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/rainkeebs/rainkeeb/keyboard.json b/keyboards/rainkeebs/rainkeeb/keyboard.json index a291d61d3b..2d4a2ac5b9 100644 --- a/keyboards/rainkeebs/rainkeeb/keyboard.json +++ b/keyboards/rainkeebs/rainkeeb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "rainkeeb", "manufacturer": "rainkeebs", - "url": "", "maintainer": "rain", "usb": { "vid": "0x726B", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/rainkeebs/yasui/keyboard.json b/keyboards/rainkeebs/yasui/keyboard.json index 43bbc46fae..1f5caa636f 100644 --- a/keyboards/rainkeebs/yasui/keyboard.json +++ b/keyboards/rainkeebs/yasui/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/ramlord/witf/keyboard.json b/keyboards/ramlord/witf/keyboard.json index 55049a3ffa..5e9f3e8a13 100644 --- a/keyboards/ramlord/witf/keyboard.json +++ b/keyboards/ramlord/witf/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -22,7 +20,6 @@ "scroll_lock": "A4" }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x343F", diff --git a/keyboards/rart/rart45/keyboard.json b/keyboards/rart/rart45/keyboard.json index 42a5d054d7..eed7a15dcf 100644 --- a/keyboards/rart/rart45/keyboard.json +++ b/keyboards/rart/rart45/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Rart45", "manufacturer": "Alabahuy", - "url": "", "maintainer": "Alabahuy", "usb": { "vid": "0x414C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/rart/rart4x4/keyboard.json b/keyboards/rart/rart4x4/keyboard.json index c38e2103de..a18e4a4606 100644 --- a/keyboards/rart/rart4x4/keyboard.json +++ b/keyboards/rart/rart4x4/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RART4X4", "manufacturer": "Alabahuy", - "url": "", "maintainer": "Alabahuy", "usb": { "vid": "0x414C", @@ -32,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/rart/rart60/keyboard.json b/keyboards/rart/rart60/keyboard.json index d5cc7bf0b4..474c3512af 100644 --- a/keyboards/rart/rart60/keyboard.json +++ b/keyboards/rart/rart60/keyboard.json @@ -23,7 +23,6 @@ "rows": ["GP23", "GP25", "GP15", "GP16", "GP17"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0060", diff --git a/keyboards/rart/rart67/keyboard.json b/keyboards/rart/rart67/keyboard.json index 6651561743..a58955a778 100644 --- a/keyboards/rart/rart67/keyboard.json +++ b/keyboards/rart/rart67/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RART67", "manufacturer": "Alabahuy", - "url": "", "maintainer": "Alabahuy", "usb": { "vid": "0x414C", @@ -32,7 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/rart/rart67m/keyboard.json b/keyboards/rart/rart67m/keyboard.json index 0d6cfdeed1..bade7834fd 100644 --- a/keyboards/rart/rart67m/keyboard.json +++ b/keyboards/rart/rart67m/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RART67M", "manufacturer": "Alabahuy", - "url": "", "maintainer": "Alabahuy", "usb": { "vid": "0x414C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/rart/rart75/keyboard.json b/keyboards/rart/rart75/keyboard.json index beb8a7cc39..61ffa222ef 100644 --- a/keyboards/rart/rart75/keyboard.json +++ b/keyboards/rart/rart75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RART75", "manufacturer": "Alabahuy", - "url": "", "maintainer": "Alabahuy", "usb": { "vid": "0x414C", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "encoder": true, "extrakey": true, diff --git a/keyboards/rart/rart75hs/keyboard.json b/keyboards/rart/rart75hs/keyboard.json index f8763bfbee..9371daacf2 100644 --- a/keyboards/rart/rart75hs/keyboard.json +++ b/keyboards/rart/rart75hs/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RART75 Hotswap", "manufacturer": "Alabahuy", - "url": "", "maintainer": "Alabahuy", "usb": { "vid": "0x414C", diff --git a/keyboards/rart/rart75m/keyboard.json b/keyboards/rart/rart75m/keyboard.json index 925e8dff5e..d380adf10a 100644 --- a/keyboards/rart/rart75m/keyboard.json +++ b/keyboards/rart/rart75m/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RART75M", "manufacturer": "Alabahuy", - "url": "", "maintainer": "Alabahuy", "usb": { "vid": "0x414C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/rart/rart80/keyboard.json b/keyboards/rart/rart80/keyboard.json index 06fbd1add6..a2d4a7f3eb 100644 --- a/keyboards/rart/rart80/keyboard.json +++ b/keyboards/rart/rart80/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RART80 Hotswap", "manufacturer": "Alabahuy", - "url": "", "maintainer": "Alabahuy", "usb": { "vid": "0x414C", diff --git a/keyboards/rart/rartand/keyboard.json b/keyboards/rart/rartand/keyboard.json index 330beca3e1..f6728274ed 100644 --- a/keyboards/rart/rartand/keyboard.json +++ b/keyboards/rart/rartand/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Rartand", "manufacturer": "Alabahuy", - "url": "", "maintainer": "Alabahuy", "usb": { "vid": "0x414C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/rart/rartlice/keyboard.json b/keyboards/rart/rartlice/keyboard.json index c55919e6a6..f568fbba47 100644 --- a/keyboards/rart/rartlice/keyboard.json +++ b/keyboards/rart/rartlice/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Rartlice", "manufacturer": "Alabahuy", - "url": "", "maintainer": "Alabahuy", "usb": { "vid": "0x414C", diff --git a/keyboards/rart/rartlite/keyboard.json b/keyboards/rart/rartlite/keyboard.json index f542654db7..df9180d622 100644 --- a/keyboards/rart/rartlite/keyboard.json +++ b/keyboards/rart/rartlite/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RARTLITE", "manufacturer": "Alabahuy", - "url": "", "maintainer": "Alabahuy", "usb": { "vid": "0x414C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/rart/rartpad/keyboard.json b/keyboards/rart/rartpad/keyboard.json index ac9b2a38f1..cc3f7120d2 100644 --- a/keyboards/rart/rartpad/keyboard.json +++ b/keyboards/rart/rartpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RARTPAD", "manufacturer": "Alabahuy", - "url": "", "maintainer": "Alabahuy", "usb": { "vid": "0x414C", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/rastersoft/minitkl/keyboard.json b/keyboards/rastersoft/minitkl/keyboard.json index e8d0691959..6b0869bc63 100644 --- a/keyboards/rastersoft/minitkl/keyboard.json +++ b/keyboards/rastersoft/minitkl/keyboard.json @@ -24,7 +24,6 @@ "rgblight": { "led_count": 3, "pin": "B2", - "hue_steps": 8, "saturation_steps": 8, "brightness_steps": 8, "animations": { diff --git a/keyboards/rate/pistachio/info.json b/keyboards/rate/pistachio/info.json index 0eaea7885d..7136860260 100644 --- a/keyboards/rate/pistachio/info.json +++ b/keyboards/rate/pistachio/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "pistachio", "manufacturer": "rate", - "url": "", "maintainer": "rate", "usb": { "vid": "0x5255", diff --git a/keyboards/rate/pistachio_mp/keyboard.json b/keyboards/rate/pistachio_mp/keyboard.json index dadb936942..71e3244523 100644 --- a/keyboards/rate/pistachio_mp/keyboard.json +++ b/keyboards/rate/pistachio_mp/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "pistachio_mp", "manufacturer": "rate", - "url": "", "maintainer": "rate", "usb": { "vid": "0x5255", @@ -18,8 +17,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/rationalist/ratio65_hotswap/rev_a/keyboard.json b/keyboards/rationalist/ratio65_hotswap/rev_a/keyboard.json index fe40f12f46..608a7e8705 100644 --- a/keyboards/rationalist/ratio65_hotswap/rev_a/keyboard.json +++ b/keyboards/rationalist/ratio65_hotswap/rev_a/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ratio65 Hotswap Rev A", "manufacturer": "4pplet", - "url": "", "maintainer": "4pplet", "usb": { "vid": "0x4446", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/rationalist/ratio65_solder/rev_a/keyboard.json b/keyboards/rationalist/ratio65_solder/rev_a/keyboard.json index 6953636dee..59efe9c38f 100644 --- a/keyboards/rationalist/ratio65_solder/rev_a/keyboard.json +++ b/keyboards/rationalist/ratio65_solder/rev_a/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ratio65 Solder Rev A", "manufacturer": "4pplet", - "url": "", "maintainer": "4pplet", "usb": { "vid": "0x4446", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/recompile_keys/cocoa40/keyboard.json b/keyboards/recompile_keys/cocoa40/keyboard.json index 45f0cba2ff..9fad026ea7 100644 --- a/keyboards/recompile_keys/cocoa40/keyboard.json +++ b/keyboards/recompile_keys/cocoa40/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/recompile_keys/mio/keyboard.json b/keyboards/recompile_keys/mio/keyboard.json index 700bb09c07..a2c34be5bc 100644 --- a/keyboards/recompile_keys/mio/keyboard.json +++ b/keyboards/recompile_keys/mio/keyboard.json @@ -31,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/rect44/keyboard.json b/keyboards/rect44/keyboard.json index d331e48bd9..c863bec9a3 100644 --- a/keyboards/rect44/keyboard.json +++ b/keyboards/rect44/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Rect44", "manufacturer": "koshinoya", - "url": "", "maintainer": "koshinoya", "usb": { "vid": "0xFEED", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/redox/rev1/info.json b/keyboards/redox/rev1/info.json index ee9786d838..c205548e21 100644 --- a/keyboards/redox/rev1/info.json +++ b/keyboards/redox/rev1/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Redox", "manufacturer": "Falbatech", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4D44", @@ -11,7 +10,6 @@ "features":{ "bootmagic": true, "command": true, - "console": false, "mousekey": true, "extrakey": true, "nkro": true, diff --git a/keyboards/redox/wireless/keyboard.json b/keyboards/redox/wireless/keyboard.json index 86977f4602..7f167240b6 100644 --- a/keyboards/redox/wireless/keyboard.json +++ b/keyboards/redox/wireless/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Redox Wireless", "manufacturer": "Mattia Dal Ben", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4D44", diff --git a/keyboards/redox_media/keyboard.json b/keyboards/redox_media/keyboard.json index 83057da79f..dba5657ea2 100644 --- a/keyboards/redox_media/keyboard.json +++ b/keyboards/redox_media/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Redox Media", "manufacturer": "shiftux", - "url": "", "maintainer": "shiftux", "usb": { "vid": "0xFEED", diff --git a/keyboards/redscarf_i/keyboard.json b/keyboards/redscarf_i/keyboard.json index 6a186dff0b..20ee5ce3bd 100644 --- a/keyboards/redscarf_i/keyboard.json +++ b/keyboards/redscarf_i/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Red Scarf I", "manufacturer": "Red Scarf", - "url": "", "maintainer": "qmk, defying", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/redscarf_iiplus/verb/keyboard.json b/keyboards/redscarf_iiplus/verb/keyboard.json index 99d763e39a..2bb3910fb5 100644 --- a/keyboards/redscarf_iiplus/verb/keyboard.json +++ b/keyboards/redscarf_iiplus/verb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RedScarfII+ Ver.B (RS78)", "manufacturer": "RedScarf", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/redscarf_iiplus/verc/keyboard.json b/keyboards/redscarf_iiplus/verc/keyboard.json index a6defe4851..c9b960e7ba 100644 --- a/keyboards/redscarf_iiplus/verc/keyboard.json +++ b/keyboards/redscarf_iiplus/verc/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RedScarfII+ Ver.C (RS68)", "manufacturer": "RedScarf", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/redscarf_iiplus/verd/keyboard.json b/keyboards/redscarf_iiplus/verd/keyboard.json index d0ba57553a..fbb0b14402 100644 --- a/keyboards/redscarf_iiplus/verd/keyboard.json +++ b/keyboards/redscarf_iiplus/verd/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RedScarfII+ Ver.D", "manufacturer": "RedScarf", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/reedskeebs/alish40/keyboard.json b/keyboards/reedskeebs/alish40/keyboard.json index 1a4b9f4afe..564d4eeeda 100644 --- a/keyboards/reedskeebs/alish40/keyboard.json +++ b/keyboards/reedskeebs/alish40/keyboard.json @@ -34,10 +34,8 @@ "static_gradient": true, "twinkle": true }, - "brightness_steps": 17, "hue_steps": 10, - "led_count": 10, - "saturation_steps": 17 + "led_count": 10 }, "ws2812": { "pin": "F5" diff --git a/keyboards/relapsekb/or87/keyboard.json b/keyboards/relapsekb/or87/keyboard.json index 0ac5022aca..67ff9cd19b 100644 --- a/keyboards/relapsekb/or87/keyboard.json +++ b/keyboards/relapsekb/or87/keyboard.json @@ -15,7 +15,6 @@ "cols": ["F7", "C7", "C6", "B6", "B5", "B4", "D7", "D0", "B7"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "vid": "0x722D", diff --git a/keyboards/retro_75/keyboard.json b/keyboards/retro_75/keyboard.json index e077be2ee9..29b26ab5c1 100644 --- a/keyboards/retro_75/keyboard.json +++ b/keyboards/retro_75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Retro75", "manufacturer": "PheonixStarr", - "url": "", "maintainer": "zvecr", "usb": { "vid": "0xFEED", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/reversestudio/decadepad/keyboard.json b/keyboards/reversestudio/decadepad/keyboard.json index 601122aa37..9958c63250 100644 --- a/keyboards/reversestudio/decadepad/keyboard.json +++ b/keyboards/reversestudio/decadepad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "DecadePad", "manufacturer": "ReverseStudio", - "url": "", "maintainer": "huajijam", "usb": { "vid": "0x5253", @@ -30,7 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/reviung/reviung33/keyboard.json b/keyboards/reviung/reviung33/keyboard.json index 0b5ceb4e54..b258f26cab 100644 --- a/keyboards/reviung/reviung33/keyboard.json +++ b/keyboards/reviung/reviung33/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "reviung33", "manufacturer": "gtips", - "url": "", "maintainer": "gtips", "usb": { "vid": "0xFEED", @@ -32,8 +31,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false, diff --git a/keyboards/reviung/reviung34/keyboard.json b/keyboards/reviung/reviung34/keyboard.json index 8b354c00df..7495b7cc9d 100755 --- a/keyboards/reviung/reviung34/keyboard.json +++ b/keyboards/reviung/reviung34/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "reviung34", "manufacturer": "gtips", - "url": "", "maintainer": "gtips", "usb": { "vid": "0x6774", diff --git a/keyboards/reviung/reviung39/keyboard.json b/keyboards/reviung/reviung39/keyboard.json index 04cbe909c3..e18c1c163e 100644 --- a/keyboards/reviung/reviung39/keyboard.json +++ b/keyboards/reviung/reviung39/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "reviung39", "manufacturer": "gtips", - "url": "", "maintainer": "gtips", "usb": { "vid": "0xFEED", diff --git a/keyboards/reviung/reviung41/keyboard.json b/keyboards/reviung/reviung41/keyboard.json index 8e72ff5762..b44827c3d2 100644 --- a/keyboards/reviung/reviung41/keyboard.json +++ b/keyboards/reviung/reviung41/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "reviung41", "manufacturer": "gtips", - "url": "", "maintainer": "gtips", "usb": { "vid": "0x7807", diff --git a/keyboards/reviung/reviung46/keyboard.json b/keyboards/reviung/reviung46/keyboard.json index cdf9a24e17..b44aa0dce4 100644 --- a/keyboards/reviung/reviung46/keyboard.json +++ b/keyboards/reviung/reviung46/keyboard.json @@ -31,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/reviung/reviung5/keyboard.json b/keyboards/reviung/reviung5/keyboard.json index 5c932020a2..7e7101c0ab 100644 --- a/keyboards/reviung/reviung5/keyboard.json +++ b/keyboards/reviung/reviung5/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "reviung5", "manufacturer": "gtips", - "url": "", "maintainer": "gtips", "usb": { "vid": "0x5C06", @@ -32,8 +31,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/reviung/reviung53/keyboard.json b/keyboards/reviung/reviung53/keyboard.json index 33eec7d828..15f896e7d4 100644 --- a/keyboards/reviung/reviung53/keyboard.json +++ b/keyboards/reviung/reviung53/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "reviung53", "manufacturer": "gtips", - "url": "", "maintainer": "gtips", "usb": { "vid": "0x4E94", @@ -32,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/reviung/reviung61/keyboard.json b/keyboards/reviung/reviung61/keyboard.json index 99a297bde4..09497b203e 100644 --- a/keyboards/reviung/reviung61/keyboard.json +++ b/keyboards/reviung/reviung61/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "reviung61", "manufacturer": "gtips", - "url": "", "maintainer": "gtips", "usb": { "vid": "0xFEED", diff --git a/keyboards/rgbkb/sol/rev1/keyboard.json b/keyboards/rgbkb/sol/rev1/keyboard.json index 38932a78e1..9a4c538e55 100644 --- a/keyboards/rgbkb/sol/rev1/keyboard.json +++ b/keyboards/rgbkb/sol/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Sol", "manufacturer": "RGBKB", - "url": "", "maintainer": "Legonut", "usb": { "vid": "0xFEED", diff --git a/keyboards/rgbkb/sol/rev2/keyboard.json b/keyboards/rgbkb/sol/rev2/keyboard.json index b6bad358e3..140ea1cd69 100644 --- a/keyboards/rgbkb/sol/rev2/keyboard.json +++ b/keyboards/rgbkb/sol/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Sol", "manufacturer": "RGBKB", - "url": "", "maintainer": "Legonut", "usb": { "vid": "0xFEED", diff --git a/keyboards/rgbkb/sol3/rev1/keyboard.json b/keyboards/rgbkb/sol3/rev1/keyboard.json index 775e3f8629..dc9e6d4035 100644 --- a/keyboards/rgbkb/sol3/rev1/keyboard.json +++ b/keyboards/rgbkb/sol3/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Sol 3", "manufacturer": "RGBKB", - "url": "", "maintainer": "XScorpion2, rgbkb", "usb": { "vid": "0x3535", diff --git a/keyboards/rgbkb/zen/rev1/keyboard.json b/keyboards/rgbkb/zen/rev1/keyboard.json index 91d127de58..b35381f607 100644 --- a/keyboards/rgbkb/zen/rev1/keyboard.json +++ b/keyboards/rgbkb/zen/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Project Zen", "manufacturer": "Legonut", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/rgbkb/zen/rev2/keyboard.json b/keyboards/rgbkb/zen/rev2/keyboard.json index b59af6dfdd..917274f186 100644 --- a/keyboards/rgbkb/zen/rev2/keyboard.json +++ b/keyboards/rgbkb/zen/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Project Zen", "manufacturer": "Legonut", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/rico/phoenix_project_no1/keyboard.json b/keyboards/rico/phoenix_project_no1/keyboard.json index 4d354ce0af..ab2b207212 100644 --- a/keyboards/rico/phoenix_project_no1/keyboard.json +++ b/keyboards/rico/phoenix_project_no1/keyboard.json @@ -7,8 +7,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/rmi_kb/aelith/keyboard.json b/keyboards/rmi_kb/aelith/keyboard.json index de16e5ac31..b3f688913e 100644 --- a/keyboards/rmi_kb/aelith/keyboard.json +++ b/keyboards/rmi_kb/aelith/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "AELITH", "manufacturer": "RMI-KB", - "url": "", "maintainer": "ramonimbao", "usb": { "vid": "0xB16B", diff --git a/keyboards/rmi_kb/chevron/keyboard.json b/keyboards/rmi_kb/chevron/keyboard.json index 8eda552902..8ae5c12ae1 100644 --- a/keyboards/rmi_kb/chevron/keyboard.json +++ b/keyboards/rmi_kb/chevron/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Chevron", "manufacturer": "RMI-KB", - "url": "", "maintainer": "ramonimbao", "usb": { "vid": "0xB16B", diff --git a/keyboards/rmi_kb/equator/keyboard.json b/keyboards/rmi_kb/equator/keyboard.json index 9e1ccab0fb..18054abc35 100644 --- a/keyboards/rmi_kb/equator/keyboard.json +++ b/keyboards/rmi_kb/equator/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -18,7 +16,6 @@ "rows": ["B12", "B10", "A15", "A10", "B1"] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0xE0A1", diff --git a/keyboards/rmi_kb/herringbone/pro/keyboard.json b/keyboards/rmi_kb/herringbone/pro/keyboard.json index 5303185692..a49983db07 100644 --- a/keyboards/rmi_kb/herringbone/pro/keyboard.json +++ b/keyboards/rmi_kb/herringbone/pro/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Herringbone Pro", "manufacturer": "RMI-KB", - "url": "", "maintainer": "ramonimbao", "usb": { "vid": "0xB16B", diff --git a/keyboards/rmi_kb/herringbone/v1/keyboard.json b/keyboards/rmi_kb/herringbone/v1/keyboard.json index 2883f341ab..0f624dbc99 100644 --- a/keyboards/rmi_kb/herringbone/v1/keyboard.json +++ b/keyboards/rmi_kb/herringbone/v1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Herringbone", "manufacturer": "RMI-KB", - "url": "", "maintainer": "ramonimbao", "usb": { "vid": "0xB16B", diff --git a/keyboards/rmi_kb/mona/v1/keyboard.json b/keyboards/rmi_kb/mona/v1/keyboard.json index 9d8f66af2f..f56986df1a 100644 --- a/keyboards/rmi_kb/mona/v1/keyboard.json +++ b/keyboards/rmi_kb/mona/v1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Mona", "manufacturer": "RMI-KB", - "url": "", "maintainer": "ramonimbao", "usb": { "vid": "0xB16B", diff --git a/keyboards/rmi_kb/mona/v1_1/keyboard.json b/keyboards/rmi_kb/mona/v1_1/keyboard.json index b1e1f27fc0..95f7b9706e 100644 --- a/keyboards/rmi_kb/mona/v1_1/keyboard.json +++ b/keyboards/rmi_kb/mona/v1_1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Mona", "manufacturer": "RMI-KB", - "url": "", "maintainer": "ramonimbao", "usb": { "vid": "0xB16B", diff --git a/keyboards/rmi_kb/mona/v32a/keyboard.json b/keyboards/rmi_kb/mona/v32a/keyboard.json index e4b7760813..84a301d173 100644 --- a/keyboards/rmi_kb/mona/v32a/keyboard.json +++ b/keyboards/rmi_kb/mona/v32a/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Mona", "manufacturer": "RMI-KB", - "url": "", "maintainer": "ramonimbao", "usb": { "vid": "0xB16B", diff --git a/keyboards/rmi_kb/squishy65/keyboard.json b/keyboards/rmi_kb/squishy65/keyboard.json index adc83200d3..aecaaf9c04 100644 --- a/keyboards/rmi_kb/squishy65/keyboard.json +++ b/keyboards/rmi_kb/squishy65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Squishy65", "manufacturer": "RMI-KB", - "url": "", "maintainer": "ramonimbao", "usb": { "vid": "0xB16B", diff --git a/keyboards/rmi_kb/squishyfrl/keyboard.json b/keyboards/rmi_kb/squishyfrl/keyboard.json index 8a14a2a4ed..1341a9e264 100644 --- a/keyboards/rmi_kb/squishyfrl/keyboard.json +++ b/keyboards/rmi_kb/squishyfrl/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "SquishyFRL", "manufacturer": "RMI-KB", - "url": "", "maintainer": "ramonimbao", "usb": { "vid": "0xB16B", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/rmi_kb/squishytkl/keyboard.json b/keyboards/rmi_kb/squishytkl/keyboard.json index ae63d83c5d..1c8b75750e 100644 --- a/keyboards/rmi_kb/squishytkl/keyboard.json +++ b/keyboards/rmi_kb/squishytkl/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "SquishyTKL", "manufacturer": "RMI-KB", - "url": "", "maintainer": "ramonimbao", "usb": { "vid": "0xB16B", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/rmi_kb/tkl_ff/info.json b/keyboards/rmi_kb/tkl_ff/info.json index a4fe24cab7..88fe409928 100644 --- a/keyboards/rmi_kb/tkl_ff/info.json +++ b/keyboards/rmi_kb/tkl_ff/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "TKL FF", "manufacturer": "RMI-KB", - "url": "", "maintainer": "ramonimbao", "usb": { "vid": "0xB16B", @@ -9,8 +8,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/rmi_kb/wete/v1/keyboard.json b/keyboards/rmi_kb/wete/v1/keyboard.json index c9a54f76c2..ff18fac5b5 100644 --- a/keyboards/rmi_kb/wete/v1/keyboard.json +++ b/keyboards/rmi_kb/wete/v1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Wete", "manufacturer": "RMI-KB", - "url": "", "maintainer": "ramonimbao", "usb": { "vid": "0xB16B", diff --git a/keyboards/rmi_kb/wete/v2/keyboard.json b/keyboards/rmi_kb/wete/v2/keyboard.json index 2c925ee919..3ad1fc9a73 100644 --- a/keyboards/rmi_kb/wete/v2/keyboard.json +++ b/keyboards/rmi_kb/wete/v2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Wete R2", "manufacturer": "RMI-KB", - "url": "", "maintainer": "ramonimbao", "usb": { "vid": "0xB16B", diff --git a/keyboards/rmkeebs/rm_fullsize/keyboard.json b/keyboards/rmkeebs/rm_fullsize/keyboard.json index f9ff4dd5b8..40ee2b4c9d 100644 --- a/keyboards/rmkeebs/rm_fullsize/keyboard.json +++ b/keyboards/rmkeebs/rm_fullsize/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -18,7 +16,6 @@ "rows": ["GP8", "GP7", "GP9", "GP20", "GP18", "GP19"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0000", diff --git a/keyboards/rmkeebs/rm_numpad/keyboard.json b/keyboards/rmkeebs/rm_numpad/keyboard.json index eb3d11ca86..434c10923d 100644 --- a/keyboards/rmkeebs/rm_numpad/keyboard.json +++ b/keyboards/rmkeebs/rm_numpad/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/rocketboard_16/keyboard.json b/keyboards/rocketboard_16/keyboard.json index 4831911f4f..cacd37d1c3 100644 --- a/keyboards/rocketboard_16/keyboard.json +++ b/keyboards/rocketboard_16/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Rocketboard-16", "manufacturer": "Rocketboard", - "url": "", "maintainer": "fl3tching101", "usb": { "vid": "0xB034", diff --git a/keyboards/rocketboard_16/keycode_lookup.c b/keyboards/rocketboard_16/keycode_lookup.c index 41fd5c8537..a29808d04d 100644 --- a/keyboards/rocketboard_16/keycode_lookup.c +++ b/keyboards/rocketboard_16/keycode_lookup.c @@ -14,6 +14,7 @@ * along with this program. If not, see <http://www.gnu.org/licenses/>. */ +#include <stdlib.h> #include "keycode_lookup.h" #include "quantum_keycodes.h" #include "keymap_us.h" diff --git a/keyboards/rominronin/katana60/rev1/keyboard.json b/keyboards/rominronin/katana60/rev1/keyboard.json index 0a9bb4ea49..b8d9df35a7 100644 --- a/keyboards/rominronin/katana60/rev1/keyboard.json +++ b/keyboards/rominronin/katana60/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Katana60 rev1", "manufacturer": "RominRonin CandyKeys", - "url": "", "maintainer": "rominronin", "usb": { "vid": "0x7272", diff --git a/keyboards/rose75/keyboard.json b/keyboards/rose75/keyboard.json index 9306cb211b..1c756d3fdd 100644 --- a/keyboards/rose75/keyboard.json +++ b/keyboards/rose75/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/roseslite/keyboard.json b/keyboards/roseslite/keyboard.json index 88b8c7a205..267a57a5c2 100644 --- a/keyboards/roseslite/keyboard.json +++ b/keyboards/roseslite/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/rot13labs/h4ckb0ard/keyboard.json b/keyboards/rot13labs/h4ckb0ard/keyboard.json index 4ac783774d..8d1ce7ab43 100644 --- a/keyboards/rot13labs/h4ckb0ard/keyboard.json +++ b/keyboards/rot13labs/h4ckb0ard/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/rot13labs/rotc0n/keyboard.json b/keyboards/rot13labs/rotc0n/keyboard.json index a9dc27a471..fa5ac19edb 100644 --- a/keyboards/rot13labs/rotc0n/keyboard.json +++ b/keyboards/rot13labs/rotc0n/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["B1", "B0"] }, "processor": "atmega328p", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0xBEEF", diff --git a/keyboards/rot13labs/veilid_sao/keyboard.json b/keyboards/rot13labs/veilid_sao/keyboard.json index 751345d264..c7567a839a 100644 --- a/keyboards/rot13labs/veilid_sao/keyboard.json +++ b/keyboards/rot13labs/veilid_sao/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false, @@ -31,9 +29,6 @@ "cycle_left_right": true }, "driver": "ws2812", - "default": { - "animation": "cycle_left_right" - }, "layout": [ {"flags": 4, "matrix": [0, 0], "x": 0, "y": 0} ], diff --git a/keyboards/rotr/keyboard.json b/keyboards/rotr/keyboard.json index cb1a7e923d..e484e26ddc 100644 --- a/keyboards/rotr/keyboard.json +++ b/keyboards/rotr/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/rpiguy9907/southpaw66/keyboard.json b/keyboards/rpiguy9907/southpaw66/keyboard.json index f2fdf4f5ff..c751ee6d8e 100644 --- a/keyboards/rpiguy9907/southpaw66/keyboard.json +++ b/keyboards/rpiguy9907/southpaw66/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Southpaw66", "manufacturer": "rpiguy9907", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x9907", diff --git a/keyboards/runes/skjoldr/keyboard.json b/keyboards/runes/skjoldr/keyboard.json index a6040dedd6..ff3476697e 100644 --- a/keyboards/runes/skjoldr/keyboard.json +++ b/keyboards/runes/skjoldr/keyboard.json @@ -11,7 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/runes/vaengr/keyboard.json b/keyboards/runes/vaengr/keyboard.json index 42389043d4..dce2c7a228 100644 --- a/keyboards/runes/vaengr/keyboard.json +++ b/keyboards/runes/vaengr/keyboard.json @@ -31,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/ryanbaekr/rb1/keyboard.json b/keyboards/ryanbaekr/rb1/keyboard.json index 31f2fa20c4..a7222869e0 100644 --- a/keyboards/ryanbaekr/rb1/keyboard.json +++ b/keyboards/ryanbaekr/rb1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "rb1", "manufacturer": "ryanbaekr", - "url": "", "maintainer": "ryanbaekr", "usb": { "vid": "0x7262", @@ -12,8 +11,6 @@ "bootloader": "caterina", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/ryanbaekr/rb18/keyboard.json b/keyboards/ryanbaekr/rb18/keyboard.json index 03a1335c7b..0febe5a1d5 100644 --- a/keyboards/ryanbaekr/rb18/keyboard.json +++ b/keyboards/ryanbaekr/rb18/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "rb18", "manufacturer": "ryanbaekr", - "url": "", "maintainer": "ryanbaekr", "usb": { "vid": "0x7262", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/ryanbaekr/rb69/keyboard.json b/keyboards/ryanbaekr/rb69/keyboard.json index c1cce7508e..3becf7f588 100644 --- a/keyboards/ryanbaekr/rb69/keyboard.json +++ b/keyboards/ryanbaekr/rb69/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "rb69", "manufacturer": "ryanbaekr", - "url": "", "maintainer": "ryanbaekr", "usb": { "vid": "0x7262", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/ryanbaekr/rb86/keyboard.json b/keyboards/ryanbaekr/rb86/keyboard.json index 5813a2fa7b..6cc5f0f9b0 100644 --- a/keyboards/ryanbaekr/rb86/keyboard.json +++ b/keyboards/ryanbaekr/rb86/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "rb86", "manufacturer": "ryanbaekr", - "url": "", "maintainer": "ryanbaekr", "usb": { "vid": "0x7262", diff --git a/keyboards/ryanbaekr/rb87/keyboard.json b/keyboards/ryanbaekr/rb87/keyboard.json index 6d19c3c29d..5b9500f973 100644 --- a/keyboards/ryanbaekr/rb87/keyboard.json +++ b/keyboards/ryanbaekr/rb87/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "rb87", "manufacturer": "ryanbaekr", - "url": "", "maintainer": "ryanbaekr", "development_board": "elite_c", "pin_compatible": "elite_c", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/ryanskidmore/rskeys100/keyboard.json b/keyboards/ryanskidmore/rskeys100/keyboard.json index c77d3f4c90..27eae84a6e 100644 --- a/keyboards/ryanskidmore/rskeys100/keyboard.json +++ b/keyboards/ryanskidmore/rskeys100/keyboard.json @@ -158,7 +158,6 @@ }, "processor": "atmega32u4", "bootloader": "atmel-dfu", - "url": "", "maintainer": "ryanskidmore", "community_layouts": ["fullsize_iso"], "layouts": { diff --git a/keyboards/ryloo_studio/m0110/keyboard.json b/keyboards/ryloo_studio/m0110/keyboard.json index 9eb4662e36..3377eee155 100644 --- a/keyboards/ryloo_studio/m0110/keyboard.json +++ b/keyboards/ryloo_studio/m0110/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/s_ol/0xc_pad/keyboard.json b/keyboards/s_ol/0xc_pad/keyboard.json index 4eb4bd9055..1df5a5131e 100644 --- a/keyboards/s_ol/0xc_pad/keyboard.json +++ b/keyboards/s_ol/0xc_pad/keyboard.json @@ -7,8 +7,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/sakura_workshop/fuji75/info.json b/keyboards/sakura_workshop/fuji75/info.json index 7b56fd4d72..604c504641 100644 --- a/keyboards/sakura_workshop/fuji75/info.json +++ b/keyboards/sakura_workshop/fuji75/info.json @@ -1,6 +1,5 @@ { "manufacturer": "SakuraWorkshop", - "url": "", "maintainer": "Freather", "processor": "atmega32u4", "bootloader": "atmel-dfu", diff --git a/keyboards/salane/ncr80alpsskfl/keyboard.json b/keyboards/salane/ncr80alpsskfl/keyboard.json index ce3f10c685..5f7bae802a 100644 --- a/keyboards/salane/ncr80alpsskfl/keyboard.json +++ b/keyboards/salane/ncr80alpsskfl/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NCR80 ALPS SKFL", "manufacturer": "Salane", - "url": "", "maintainer": "Mai The San", "processor": "RP2040", "bootloader": "rp2040", diff --git a/keyboards/salane/starryfrl/keyboard.json b/keyboards/salane/starryfrl/keyboard.json index 43e434cb02..a63bdc83d1 100644 --- a/keyboards/salane/starryfrl/keyboard.json +++ b/keyboards/salane/starryfrl/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Starry FRL", "manufacturer": "Salane", - "url": "", "maintainer": "Mai The San", "processor": "RP2040", "bootloader": "rp2040", @@ -19,8 +18,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": false, "rgblight": true, "encoder": true diff --git a/keyboards/salicylic_acid3/7splus/keyboard.json b/keyboards/salicylic_acid3/7splus/keyboard.json index d04b8ad45b..aa04293c9c 100644 --- a/keyboards/salicylic_acid3/7splus/keyboard.json +++ b/keyboards/salicylic_acid3/7splus/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/salicylic_acid3/ajisai74/keyboard.json b/keyboards/salicylic_acid3/ajisai74/keyboard.json index 62d475d9df..a74cb07902 100644 --- a/keyboards/salicylic_acid3/ajisai74/keyboard.json +++ b/keyboards/salicylic_acid3/ajisai74/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/salicylic_acid3/ergoarrows/keyboard.json b/keyboards/salicylic_acid3/ergoarrows/keyboard.json index 122d2e0ee6..08911ca103 100644 --- a/keyboards/salicylic_acid3/ergoarrows/keyboard.json +++ b/keyboards/salicylic_acid3/ergoarrows/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/salicylic_acid3/guide68/keyboard.json b/keyboards/salicylic_acid3/guide68/keyboard.json index 0714262858..327794adf9 100644 --- a/keyboards/salicylic_acid3/guide68/keyboard.json +++ b/keyboards/salicylic_acid3/guide68/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "rgblight": true, @@ -18,7 +16,6 @@ "rows": ["D4", "C6", "D7", "E6", "B4"] }, "processor": "atmega32u4", - "url": "", "usb": { "vid": "0x04D8", "pid": "0xE6DD", @@ -39,7 +36,6 @@ "twinkle": true }, "sleep": true, - "max_brightness": 255, "split": true, "split_count": [6, 6] }, diff --git a/keyboards/salicylic_acid3/nafuda/keyboard.json b/keyboards/salicylic_acid3/nafuda/keyboard.json index 87dceed05f..e3c84885cf 100644 --- a/keyboards/salicylic_acid3/nafuda/keyboard.json +++ b/keyboards/salicylic_acid3/nafuda/keyboard.json @@ -30,7 +30,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/salicylic_acid3/nknl7en/keyboard.json b/keyboards/salicylic_acid3/nknl7en/keyboard.json index 554430f6c4..3b6f71c58d 100644 --- a/keyboards/salicylic_acid3/nknl7en/keyboard.json +++ b/keyboards/salicylic_acid3/nknl7en/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/salicylic_acid3/nknl7jp/keyboard.json b/keyboards/salicylic_acid3/nknl7jp/keyboard.json index b8a9196f88..66daa50da7 100644 --- a/keyboards/salicylic_acid3/nknl7jp/keyboard.json +++ b/keyboards/salicylic_acid3/nknl7jp/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/sam/s80/keyboard.json b/keyboards/sam/s80/keyboard.json index c721efdbd7..8e76198ebb 100644 --- a/keyboards/sam/s80/keyboard.json +++ b/keyboards/sam/s80/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "s8", "manufacturer": "Sam", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x534D", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/sam/sg81m/keyboard.json b/keyboards/sam/sg81m/keyboard.json index 66e0f1ab9c..a0133b2b86 100644 --- a/keyboards/sam/sg81m/keyboard.json +++ b/keyboards/sam/sg81m/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "SG81M", "manufacturer": "Sam", - "url": "", "maintainer": "CMMS-Freather", "usb": { "vid": "0x534D", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/sanctified/dystopia/keyboard.json b/keyboards/sanctified/dystopia/keyboard.json index 1911081fc2..fed0ff75df 100644 --- a/keyboards/sanctified/dystopia/keyboard.json +++ b/keyboards/sanctified/dystopia/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dystopia", "manufacturer": "Sanctified.Works", - "url": "", "maintainer": "Sanctified", "usb": { "vid": "0x5357", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/sandwich/keeb68/keyboard.json b/keyboards/sandwich/keeb68/keyboard.json index ad3ced0da2..b452665f54 100644 --- a/keyboards/sandwich/keeb68/keyboard.json +++ b/keyboards/sandwich/keeb68/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Keeb68 (Patron Saint Edition)", "manufacturer": "sandwich", - "url": "", "maintainer": "SandwichRising", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/sapuseven/macropad12/keyboard.json b/keyboards/sapuseven/macropad12/keyboard.json index 28e8c19bf8..34f9b6a950 100644 --- a/keyboards/sapuseven/macropad12/keyboard.json +++ b/keyboards/sapuseven/macropad12/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/satt/comet46/keyboard.json b/keyboards/satt/comet46/keyboard.json index 0092f19c79..cd96686d6c 100644 --- a/keyboards/satt/comet46/keyboard.json +++ b/keyboards/satt/comet46/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Comet46", "manufacturer": "SatT", - "url": "", "maintainer": "SatT", "usb": { "vid": "0xFEED", diff --git a/keyboards/satt/vision/keyboard.json b/keyboards/satt/vision/keyboard.json index 88ec732cd6..15bbced9f5 100644 --- a/keyboards/satt/vision/keyboard.json +++ b/keyboards/satt/vision/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Vision", "manufacturer": "SatT", - "url": "", "maintainer": "SatT", "usb": { "vid": "0x5454", diff --git a/keyboards/sauce/mild/keyboard.json b/keyboards/sauce/mild/keyboard.json index 5f827ec4be..4546d40884 100644 --- a/keyboards/sauce/mild/keyboard.json +++ b/keyboards/sauce/mild/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Mild", "manufacturer": "Sauce", - "url": "", "maintainer": "andyywz", "usb": { "vid": "0x8367", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/sawnsprojects/amber80/solder/keyboard.json b/keyboards/sawnsprojects/amber80/solder/keyboard.json index dc8e718fd6..37f8382f53 100644 --- a/keyboards/sawnsprojects/amber80/solder/keyboard.json +++ b/keyboards/sawnsprojects/amber80/solder/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Amber80 Solder", "manufacturer": "SawnsProjects X Yuutsu X Zlane", - "url": "", "maintainer": "SawnsProjects", "usb": { "vid": "0x5350", diff --git a/keyboards/sawnsprojects/bunnygirl65/keyboard.json b/keyboards/sawnsprojects/bunnygirl65/keyboard.json index 92dca8693d..3fab84c557 100644 --- a/keyboards/sawnsprojects/bunnygirl65/keyboard.json +++ b/keyboards/sawnsprojects/bunnygirl65/keyboard.json @@ -15,7 +15,6 @@ "rows": ["B4", "A15", "A3", "A8", "B14"] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "1.0.0", "force_nkro": true, diff --git a/keyboards/sawnsprojects/eclipse/eclipse60/keyboard.json b/keyboards/sawnsprojects/eclipse/eclipse60/keyboard.json index 7586ed5a34..acb0a914cc 100644 --- a/keyboards/sawnsprojects/eclipse/eclipse60/keyboard.json +++ b/keyboards/sawnsprojects/eclipse/eclipse60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Eclipse60", "manufacturer": "Salane", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x534C", @@ -19,17 +18,13 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": false, "rgblight": true }, "rgblight": { "led_count": 18, - "hue_steps": 8, "saturation_steps": 8, "brightness_steps": 8, - "max_brightness": 255, "sleep": true, "animations": { "alternating": true, diff --git a/keyboards/sawnsprojects/eclipse/tinyneko/keyboard.json b/keyboards/sawnsprojects/eclipse/tinyneko/keyboard.json index 80ae2558f2..cf65aca3b4 100644 --- a/keyboards/sawnsprojects/eclipse/tinyneko/keyboard.json +++ b/keyboards/sawnsprojects/eclipse/tinyneko/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "tinyneko", "manufacturer": "Salane", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x534C", @@ -19,17 +18,13 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": false, "rgblight": true }, "rgblight": { "led_count": 18, - "hue_steps": 8, "saturation_steps": 8, "brightness_steps": 8, - "max_brightness": 255, "sleep": true, "animations": { "alternating": true, diff --git a/keyboards/sawnsprojects/krush/krush65/hotswap/keyboard.json b/keyboards/sawnsprojects/krush/krush65/hotswap/keyboard.json index ccb9165c5b..9e63cefc2c 100644 --- a/keyboards/sawnsprojects/krush/krush65/hotswap/keyboard.json +++ b/keyboards/sawnsprojects/krush/krush65/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Krush65 - Hotswap", "manufacturer": "SawnsProjects", - "url": "", "maintainer": "MaiTheSan", "usb": { "vid": "0x5350", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "encoder": true, "extrakey": true, diff --git a/keyboards/sawnsprojects/krush/krush65/solder/keyboard.json b/keyboards/sawnsprojects/krush/krush65/solder/keyboard.json index a72c903d8c..7ea0dd63d2 100644 --- a/keyboards/sawnsprojects/krush/krush65/solder/keyboard.json +++ b/keyboards/sawnsprojects/krush/krush65/solder/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Krush65 - Solder", "manufacturer": "SawnsProjects", - "url": "", "maintainer": "MaiTheSan", "usb": { "vid": "0x5350", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "encoder": true, "extrakey": true, diff --git a/keyboards/sawnsprojects/okayu/info.json b/keyboards/sawnsprojects/okayu/info.json index 08c5afe688..14c8f20c35 100644 --- a/keyboards/sawnsprojects/okayu/info.json +++ b/keyboards/sawnsprojects/okayu/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Okayu", "manufacturer": "Salane", - "url": "", "maintainer": "Mai The San", "usb": { "vid": "0x5350", @@ -14,7 +13,6 @@ "mousekey": true, "extrakey": true, "console": true, - "command": false, "nkro": true, "rgblight": true }, diff --git a/keyboards/sawnsprojects/plaque80/keyboard.json b/keyboards/sawnsprojects/plaque80/keyboard.json index dd18cc12ee..d72186a249 100644 --- a/keyboards/sawnsprojects/plaque80/keyboard.json +++ b/keyboards/sawnsprojects/plaque80/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Plaque80", "manufacturer": "SawnsProjects", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5350", @@ -19,8 +18,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": false, "rgblight": true }, diff --git a/keyboards/sawnsprojects/re65/keyboard.json b/keyboards/sawnsprojects/re65/keyboard.json index 45e874db6d..98f8e4ba25 100644 --- a/keyboards/sawnsprojects/re65/keyboard.json +++ b/keyboards/sawnsprojects/re65/keyboard.json @@ -2,7 +2,6 @@ "keyboard_name": "RE65", "maintainer": "Salane", "manufacturer": "Mai The San", - "url": "", "processor": "RP2040", "bootloader": "rp2040", "usb": { @@ -14,8 +13,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgblight": true, "encoder": true diff --git a/keyboards/sawnsprojects/satxri6key/keyboard.json b/keyboards/sawnsprojects/satxri6key/keyboard.json index 7049be25cf..92a798e4b2 100644 --- a/keyboards/sawnsprojects/satxri6key/keyboard.json +++ b/keyboards/sawnsprojects/satxri6key/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Satxri6key", "manufacturer": "MaiTheSan", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5350", @@ -83,8 +82,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/sawnsprojects/vcl65/solder/keyboard.json b/keyboards/sawnsprojects/vcl65/solder/keyboard.json index 4fc0f29766..3e2e2a8750 100644 --- a/keyboards/sawnsprojects/vcl65/solder/keyboard.json +++ b/keyboards/sawnsprojects/vcl65/solder/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "VCL65", "manufacturer": "VCL x SawnsProjects", - "url": "", "maintainer": "MaiTheSan", "usb": { "vid": "0x5350", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/scatter42/keyboard.json b/keyboards/scatter42/keyboard.json index 7bb7a63ffe..5907a4d754 100644 --- a/keyboards/scatter42/keyboard.json +++ b/keyboards/scatter42/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/sck/gtm/keyboard.json b/keyboards/sck/gtm/keyboard.json index 7ed3915114..de82d93a16 100644 --- a/keyboards/sck/gtm/keyboard.json +++ b/keyboards/sck/gtm/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "GTM Pad", "manufacturer": "SpaceCityKeyboards", - "url": "", "maintainer": "jrfhoutx", "usb": { "vid": "0xFEED", @@ -28,7 +27,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "encoder": true, "extrakey": false, diff --git a/keyboards/sck/neiso/keyboard.json b/keyboards/sck/neiso/keyboard.json index 15cec58849..51c1fb0092 100644 --- a/keyboards/sck/neiso/keyboard.json +++ b/keyboards/sck/neiso/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NEISO", "manufacturer": "Space City Keyboards", - "url": "", "maintainer": "jrfhoutx", "usb": { "vid": "0xFEED", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": false, "mousekey": false, diff --git a/keyboards/sck/osa/keyboard.json b/keyboards/sck/osa/keyboard.json index 1cdd59367b..caff86da75 100644 --- a/keyboards/sck/osa/keyboard.json +++ b/keyboards/sck/osa/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "OSA", "manufacturer": "Space City Keyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5343", diff --git a/keyboards/scottokeebs/scotto34/keyboard.json b/keyboards/scottokeebs/scotto34/keyboard.json index ecf3fed933..573768914b 100644 --- a/keyboards/scottokeebs/scotto34/keyboard.json +++ b/keyboards/scottokeebs/scotto34/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/scottokeebs/scotto69/keyboard.json b/keyboards/scottokeebs/scotto69/keyboard.json index 144e7b3a7e..f229004a61 100644 --- a/keyboards/scottokeebs/scotto69/keyboard.json +++ b/keyboards/scottokeebs/scotto69/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/scottokeebs/scottowing/keyboard.json b/keyboards/scottokeebs/scottowing/keyboard.json index 770e2fd18e..9fc5571646 100644 --- a/keyboards/scottokeebs/scottowing/keyboard.json +++ b/keyboards/scottokeebs/scottowing/keyboard.json @@ -9,8 +9,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/sendyyeah/75pixels/keyboard.json b/keyboards/sendyyeah/75pixels/keyboard.json index a9300bb19a..8200574dd9 100644 --- a/keyboards/sendyyeah/75pixels/keyboard.json +++ b/keyboards/sendyyeah/75pixels/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/sendyyeah/bevi/keyboard.json b/keyboards/sendyyeah/bevi/keyboard.json index e0c54f03db..2c45339d26 100644 --- a/keyboards/sendyyeah/bevi/keyboard.json +++ b/keyboards/sendyyeah/bevi/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/sendyyeah/pix/keyboard.json b/keyboards/sendyyeah/pix/keyboard.json index 6a9864cc35..bb74798d00 100644 --- a/keyboards/sendyyeah/pix/keyboard.json +++ b/keyboards/sendyyeah/pix/keyboard.json @@ -38,8 +38,6 @@ "bootloader": "caterina", "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/senselessclay/ck60/keyboard.json b/keyboards/senselessclay/ck60/keyboard.json index 0208ea24bc..d4fa5336e6 100644 --- a/keyboards/senselessclay/ck60/keyboard.json +++ b/keyboards/senselessclay/ck60/keyboard.json @@ -41,8 +41,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/senselessclay/ck65/keyboard.json b/keyboards/senselessclay/ck65/keyboard.json index 150479177d..294d002c5b 100644 --- a/keyboards/senselessclay/ck65/keyboard.json +++ b/keyboards/senselessclay/ck65/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/senselessclay/gos65/keyboard.json b/keyboards/senselessclay/gos65/keyboard.json index ee6bb5727a..783f3a5c82 100644 --- a/keyboards/senselessclay/gos65/keyboard.json +++ b/keyboards/senselessclay/gos65/keyboard.json @@ -33,8 +33,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/senselessclay/had60/keyboard.json b/keyboards/senselessclay/had60/keyboard.json index 03ace8014b..6857ea4ab2 100644 --- a/keyboards/senselessclay/had60/keyboard.json +++ b/keyboards/senselessclay/had60/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/sentraq/s60_x/default/keyboard.json b/keyboards/sentraq/s60_x/default/keyboard.json index 1f65b90775..f55df16eb4 100644 --- a/keyboards/sentraq/s60_x/default/keyboard.json +++ b/keyboards/sentraq/s60_x/default/keyboard.json @@ -2,8 +2,6 @@ "keyboard_name": "S60-X", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/sentraq/s60_x/info.json b/keyboards/sentraq/s60_x/info.json index 11ebdcd7d1..f8a28d9e85 100644 --- a/keyboards/sentraq/s60_x/info.json +++ b/keyboards/sentraq/s60_x/info.json @@ -1,6 +1,5 @@ { "manufacturer": "Sentraq", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/sentraq/s60_x/rgb/keyboard.json b/keyboards/sentraq/s60_x/rgb/keyboard.json index c2be7f4356..08bd224d8e 100644 --- a/keyboards/sentraq/s60_x/rgb/keyboard.json +++ b/keyboards/sentraq/s60_x/rgb/keyboard.json @@ -3,8 +3,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/sentraq/s65_plus/keyboard.json b/keyboards/sentraq/s65_plus/keyboard.json index 01e2f0a275..70c75928d7 100644 --- a/keyboards/sentraq/s65_plus/keyboard.json +++ b/keyboards/sentraq/s65_plus/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "S65-Plus", "manufacturer": "Sentraq", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/sentraq/s65_x/keyboard.json b/keyboards/sentraq/s65_x/keyboard.json index 0d0b0fc5fd..a248e491e8 100644 --- a/keyboards/sentraq/s65_x/keyboard.json +++ b/keyboards/sentraq/s65_x/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "S65-X PCB", "manufacturer": "Sentraq", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/sets3n/kk980/keyboard.json b/keyboards/sets3n/kk980/keyboard.json index 1589b0a7b4..7fd2d56403 100644 --- a/keyboards/sets3n/kk980/keyboard.json +++ b/keyboards/sets3n/kk980/keyboard.json @@ -31,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/sha/keyboard.json b/keyboards/sha/keyboard.json index 8bb4091843..e361334e00 100644 --- a/keyboards/sha/keyboard.json +++ b/keyboards/sha/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/shambles/keyboard.json b/keyboards/shambles/keyboard.json index 34ec240cae..ee134b721b 100644 --- a/keyboards/shambles/keyboard.json +++ b/keyboards/shambles/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Shambles TKL", "manufacturer": "OsciX", - "url": "", "maintainer": "OsciX", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/shandoncodes/flygone60/rev3/keyboard.json b/keyboards/shandoncodes/flygone60/rev3/keyboard.json index 6e2e62701f..4b83963648 100644 --- a/keyboards/shandoncodes/flygone60/rev3/keyboard.json +++ b/keyboards/shandoncodes/flygone60/rev3/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/shandoncodes/mino/hotswap/keyboard.json b/keyboards/shandoncodes/mino/hotswap/keyboard.json index 5bd0b933ce..b7f55f6535 100644 --- a/keyboards/shandoncodes/mino/hotswap/keyboard.json +++ b/keyboards/shandoncodes/mino/hotswap/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/shandoncodes/mino_plus/hotswap/keyboard.json b/keyboards/shandoncodes/mino_plus/hotswap/keyboard.json index f181c610ed..9103f08175 100644 --- a/keyboards/shandoncodes/mino_plus/hotswap/keyboard.json +++ b/keyboards/shandoncodes/mino_plus/hotswap/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -19,7 +17,6 @@ "rows": ["B14", "B10", "F0", "C15", "C14"] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0004", diff --git a/keyboards/shandoncodes/mino_plus/soldered/keyboard.json b/keyboards/shandoncodes/mino_plus/soldered/keyboard.json index 2b717c4c59..f89fffa4c5 100644 --- a/keyboards/shandoncodes/mino_plus/soldered/keyboard.json +++ b/keyboards/shandoncodes/mino_plus/soldered/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -19,7 +17,6 @@ "rows": ["B9", "B8", "A2", "A1", "A0"] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0003", diff --git a/keyboards/shandoncodes/riot_pad/keyboard.json b/keyboards/shandoncodes/riot_pad/keyboard.json index 7ecb52d8e0..2c52ee5439 100644 --- a/keyboards/shandoncodes/riot_pad/keyboard.json +++ b/keyboards/shandoncodes/riot_pad/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "nkro": true, "rgblight": true, "extrakey": true @@ -32,7 +30,6 @@ }, "led_count": 12 }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x1000", diff --git a/keyboards/sharkoon/skiller_sgk50_s2/keyboard.json b/keyboards/sharkoon/skiller_sgk50_s2/keyboard.json index 39d59ffa55..ff4ad9a4f7 100644 --- a/keyboards/sharkoon/skiller_sgk50_s2/keyboard.json +++ b/keyboards/sharkoon/skiller_sgk50_s2/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -185,7 +183,6 @@ "val_steps": 28, "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x3662", diff --git a/keyboards/sharkoon/skiller_sgk50_s3/keyboard.json b/keyboards/sharkoon/skiller_sgk50_s3/keyboard.json index 6535ec63b7..9d02cc1326 100644 --- a/keyboards/sharkoon/skiller_sgk50_s3/keyboard.json +++ b/keyboards/sharkoon/skiller_sgk50_s3/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -169,7 +167,6 @@ "val_steps": 28, "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x3663", diff --git a/keyboards/sharkoon/skiller_sgk50_s4/keyboard.json b/keyboards/sharkoon/skiller_sgk50_s4/keyboard.json index b7a628fd78..4161e19d7c 100644 --- a/keyboards/sharkoon/skiller_sgk50_s4/keyboard.json +++ b/keyboards/sharkoon/skiller_sgk50_s4/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -152,7 +150,6 @@ "sleep": true, "val_steps": 28 }, - "url": "", "usb": { "device_version": "1.1.0", "pid": "0x1020", diff --git a/keyboards/shk9/keyboard.json b/keyboards/shk9/keyboard.json index 968f2d91f7..fc769aaec4 100644 --- a/keyboards/shk9/keyboard.json +++ b/keyboards/shk9/keyboard.json @@ -11,7 +11,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/shoc/keyboard.json b/keyboards/shoc/keyboard.json index f044ab1b4e..b0da52f9f6 100644 --- a/keyboards/shoc/keyboard.json +++ b/keyboards/shoc/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false, diff --git a/keyboards/shorty/keyboard.json b/keyboards/shorty/keyboard.json index 158648badd..8310891c84 100644 --- a/keyboards/shorty/keyboard.json +++ b/keyboards/shorty/keyboard.json @@ -22,7 +22,6 @@ "rows": ["GP11", "GP10", "GP9", "GP29", "GP2"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x5400", diff --git a/keyboards/shostudio/arc/keyboard.json b/keyboards/shostudio/arc/keyboard.json index 33f9deb866..c1dd12e3db 100644 --- a/keyboards/shostudio/arc/keyboard.json +++ b/keyboards/shostudio/arc/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ARC", "manufacturer": "Mechlovin Studio", - "url": "", "maintainer": "Shostudio", "usb": { "vid": "0x5050", diff --git a/keyboards/sidderskb/majbritt/rev1/keyboard.json b/keyboards/sidderskb/majbritt/rev1/keyboard.json index 717b4e85a0..bb18c1bb00 100644 --- a/keyboards/sidderskb/majbritt/rev1/keyboard.json +++ b/keyboards/sidderskb/majbritt/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Majbritt Rev1", "manufacturer": "SiddersKb", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x534B", diff --git a/keyboards/sidderskb/majbritt/rev2/keyboard.json b/keyboards/sidderskb/majbritt/rev2/keyboard.json index 69c24b08ab..900b3c3061 100644 --- a/keyboards/sidderskb/majbritt/rev2/keyboard.json +++ b/keyboards/sidderskb/majbritt/rev2/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/singa/keyboard.json b/keyboards/singa/keyboard.json index ef9176211b..12962eedfe 100644 --- a/keyboards/singa/keyboard.json +++ b/keyboards/singa/keyboard.json @@ -12,7 +12,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/sirius/uni660/rev1/keyboard.json b/keyboards/sirius/uni660/rev1/keyboard.json index 793edcc685..c98c121bb8 100644 --- a/keyboards/sirius/uni660/rev1/keyboard.json +++ b/keyboards/sirius/uni660/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Uni660", "manufacturer": "SiRius", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5352", diff --git a/keyboards/sirius/uni660/rev2/ansi/keyboard.json b/keyboards/sirius/uni660/rev2/ansi/keyboard.json index 3db9fb966a..df039af1dc 100644 --- a/keyboards/sirius/uni660/rev2/ansi/keyboard.json +++ b/keyboards/sirius/uni660/rev2/ansi/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Uni660 V2 ANSI", "manufacturer": "SiRius", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5352", diff --git a/keyboards/sirius/uni660/rev2/iso/keyboard.json b/keyboards/sirius/uni660/rev2/iso/keyboard.json index 0e5958c117..062ca4f07e 100644 --- a/keyboards/sirius/uni660/rev2/iso/keyboard.json +++ b/keyboards/sirius/uni660/rev2/iso/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Uni660 V2 ISO", "manufacturer": "SiRius", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5352", diff --git a/keyboards/sixkeyboard/keyboard.json b/keyboards/sixkeyboard/keyboard.json index 1c103e03b3..5c29dee16f 100644 --- a/keyboards/sixkeyboard/keyboard.json +++ b/keyboards/sixkeyboard/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "SixKeyBoard", "manufacturer": "TechKeys", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x746B", diff --git a/keyboards/skeletn87/hotswap/keyboard.json b/keyboards/skeletn87/hotswap/keyboard.json index b0af230668..70747ce801 100644 --- a/keyboards/skeletn87/hotswap/keyboard.json +++ b/keyboards/skeletn87/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Skeletn87 Hotswap", "manufacturer": "BredWorks", - "url": "", "maintainer": "kb-elmo<[email protected]>", "usb": { "vid": "0xF984", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/skeletn87/soldered/keyboard.json b/keyboards/skeletn87/soldered/keyboard.json index 292914d8b4..81d93c42a7 100644 --- a/keyboards/skeletn87/soldered/keyboard.json +++ b/keyboards/skeletn87/soldered/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Skeletn87", "manufacturer": "BredWorks", - "url": "", "maintainer": "kb-elmo<[email protected]>", "usb": { "vid": "0xF984", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/skeletonkbd/frost68/keyboard.json b/keyboards/skeletonkbd/frost68/keyboard.json index 28b819e0d0..9d1173c860 100644 --- a/keyboards/skeletonkbd/frost68/keyboard.json +++ b/keyboards/skeletonkbd/frost68/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/skeletonkbd/skeletonnumpad/keyboard.json b/keyboards/skeletonkbd/skeletonnumpad/keyboard.json index cd007f81b6..d34d10de03 100644 --- a/keyboards/skeletonkbd/skeletonnumpad/keyboard.json +++ b/keyboards/skeletonkbd/skeletonnumpad/keyboard.json @@ -31,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/skippys_custom_pcs/roopad/keyboard.json b/keyboards/skippys_custom_pcs/roopad/keyboard.json index 0da722ff12..92cb0d1979 100644 --- a/keyboards/skippys_custom_pcs/roopad/keyboard.json +++ b/keyboards/skippys_custom_pcs/roopad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RooPad", "manufacturer": "ToastyStoemp", - "url": "", "maintainer": "ToastyStoemp", "usb": { "vid": "0x36B6", diff --git a/keyboards/skme/zeno/keyboard.json b/keyboards/skme/zeno/keyboard.json index bbea513ed5..d659227334 100644 --- a/keyboards/skme/zeno/keyboard.json +++ b/keyboards/skme/zeno/keyboard.json @@ -20,8 +20,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true }, "qmk": { diff --git a/keyboards/skmt/15k/keyboard.json b/keyboards/skmt/15k/keyboard.json index 9cf215f4d4..d09f3fb989 100644 --- a/keyboards/skmt/15k/keyboard.json +++ b/keyboards/skmt/15k/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/skyloong/dt40/keyboard.json b/keyboards/skyloong/dt40/keyboard.json index a79b48289a..be0ccb2912 100644 --- a/keyboards/skyloong/dt40/keyboard.json +++ b/keyboards/skyloong/dt40/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/skyloong/gk61/pro/keyboard.json b/keyboards/skyloong/gk61/pro/keyboard.json index 5a2302a92c..67fa3be066 100644 --- a/keyboards/skyloong/gk61/pro/keyboard.json +++ b/keyboards/skyloong/gk61/pro/keyboard.json @@ -13,7 +13,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/skyloong/gk61/pro_48/keyboard.json b/keyboards/skyloong/gk61/pro_48/keyboard.json index 0c7065ec48..399de2f5b0 100644 --- a/keyboards/skyloong/gk61/pro_48/keyboard.json +++ b/keyboards/skyloong/gk61/pro_48/keyboard.json @@ -13,7 +13,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/skyloong/gk61/v1/keyboard.json b/keyboards/skyloong/gk61/v1/keyboard.json index 0bafe1bd4e..68fda1220f 100644 --- a/keyboards/skyloong/gk61/v1/keyboard.json +++ b/keyboards/skyloong/gk61/v1/keyboard.json @@ -9,8 +9,6 @@ "extrakey": true, "mousekey": true, "nkro": true, - "command": false, - "console": false, "rgb_matrix": true }, "processor": "STM32F103", diff --git a/keyboards/skyloong/qk21/v1/keyboard.json b/keyboards/skyloong/qk21/v1/keyboard.json index 3f22fc0ccb..d3d4ce0a49 100644 --- a/keyboards/skyloong/qk21/v1/keyboard.json +++ b/keyboards/skyloong/qk21/v1/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/slz40/keyboard.json b/keyboards/slz40/keyboard.json index 138c7d21cf..3ca4c1d3fc 100644 --- a/keyboards/slz40/keyboard.json +++ b/keyboards/slz40/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/smallkeyboard/keyboard.json b/keyboards/smallkeyboard/keyboard.json index 9963d83a47..dfbdee1cdd 100644 --- a/keyboards/smallkeyboard/keyboard.json +++ b/keyboards/smallkeyboard/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "smallkeyboard", "manufacturer": "zhouqiong19840119", - "url": "", "maintainer": "zhouqiong19840119", "usb": { "vid": "0x7A71", diff --git a/keyboards/smithrune/iron160/iron160_h/keyboard.json b/keyboards/smithrune/iron160/iron160_h/keyboard.json index c1dd4c9f54..c0c0eb1221 100644 --- a/keyboards/smithrune/iron160/iron160_h/keyboard.json +++ b/keyboards/smithrune/iron160/iron160_h/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "I160-H", "manufacturer": "SmithRune", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x8384", diff --git a/keyboards/smithrune/iron160/iron160_s/keyboard.json b/keyboards/smithrune/iron160/iron160_s/keyboard.json index fc14114826..d247ce3253 100644 --- a/keyboards/smithrune/iron160/iron160_s/keyboard.json +++ b/keyboards/smithrune/iron160/iron160_s/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "I160-S", "manufacturer": "SmithRune", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x8384", diff --git a/keyboards/smithrune/iron165r2/info.json b/keyboards/smithrune/iron165r2/info.json index cff9a97cb7..c0fb3634c3 100644 --- a/keyboards/smithrune/iron165r2/info.json +++ b/keyboards/smithrune/iron165r2/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Iron165R2", "manufacturer": "SmithRune", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x8384", diff --git a/keyboards/smithrune/iron180/keyboard.json b/keyboards/smithrune/iron180/keyboard.json index b0c6e1a8ff..23ffa323af 100644 --- a/keyboards/smithrune/iron180/keyboard.json +++ b/keyboards/smithrune/iron180/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Iron180 V1", "manufacturer": "SmithRune", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x8384", diff --git a/keyboards/smithrune/iron180v2/v2h/keyboard.json b/keyboards/smithrune/iron180v2/v2h/keyboard.json index 1580a12b8c..f37454e33b 100644 --- a/keyboards/smithrune/iron180v2/v2h/keyboard.json +++ b/keyboards/smithrune/iron180v2/v2h/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Iron180H v2", "manufacturer": "SmithRune", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x8384", @@ -14,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/smithrune/iron180v2/v2s/keyboard.json b/keyboards/smithrune/iron180v2/v2s/keyboard.json index f8f27f4cc1..455f4b3956 100644 --- a/keyboards/smithrune/iron180v2/v2s/keyboard.json +++ b/keyboards/smithrune/iron180v2/v2s/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Iron180 Sv2", "manufacturer": "SmithRune", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x8384", @@ -15,8 +14,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/smithrune/magnus/m75h/keyboard.json b/keyboards/smithrune/magnus/m75h/keyboard.json index 325db7d1da..b3cc371387 100644 --- a/keyboards/smithrune/magnus/m75h/keyboard.json +++ b/keyboards/smithrune/magnus/m75h/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Magnus M75H", "manufacturer": "SmithRune", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x8384", @@ -18,8 +17,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/smithrune/magnus/m75s/keyboard.json b/keyboards/smithrune/magnus/m75s/keyboard.json index 352b529bb0..7c772a9d6f 100644 --- a/keyboards/smithrune/magnus/m75s/keyboard.json +++ b/keyboards/smithrune/magnus/m75s/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Magnus M75S", "manufacturer": "SmithRune", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x8384", @@ -19,8 +18,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/smk60/keyboard.json b/keyboards/smk60/keyboard.json index 67265a667c..01fb309962 100644 --- a/keyboards/smk60/keyboard.json +++ b/keyboards/smk60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "SMK60", "manufacturer": "astro", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xDEAD", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/smoll/lefty/info.json b/keyboards/smoll/lefty/info.json index c34e264176..c721095cee 100644 --- a/keyboards/smoll/lefty/info.json +++ b/keyboards/smoll/lefty/info.json @@ -8,8 +8,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/snampad/keyboard.json b/keyboards/snampad/keyboard.json index e2a269d5c7..b835f0bf35 100644 --- a/keyboards/snampad/keyboard.json +++ b/keyboards/snampad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "snampad", "manufacturer": "Snamellit", - "url": "", "maintainer": "ptillemans", "usb": { "vid": "0xFEED", diff --git a/keyboards/sneakbox/aliceclone/keyboard.json b/keyboards/sneakbox/aliceclone/keyboard.json index bb0cd8e4b8..ecf6aad57c 100644 --- a/keyboards/sneakbox/aliceclone/keyboard.json +++ b/keyboards/sneakbox/aliceclone/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/sneakbox/aliceclonergb/keyboard.json b/keyboards/sneakbox/aliceclonergb/keyboard.json index be3d48fa87..b80ba95f91 100644 --- a/keyboards/sneakbox/aliceclonergb/keyboard.json +++ b/keyboards/sneakbox/aliceclonergb/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/sneakbox/ava/keyboard.json b/keyboards/sneakbox/ava/keyboard.json index 41712f7e95..b871f6b14e 100644 --- a/keyboards/sneakbox/ava/keyboard.json +++ b/keyboards/sneakbox/ava/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/sneakbox/disarray/ortho/keyboard.json b/keyboards/sneakbox/disarray/ortho/keyboard.json index 31a201e0d2..c9fc1e5012 100644 --- a/keyboards/sneakbox/disarray/ortho/keyboard.json +++ b/keyboards/sneakbox/disarray/ortho/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/sneakbox/disarray/staggered/keyboard.json b/keyboards/sneakbox/disarray/staggered/keyboard.json index 4631795130..df5b0983ce 100644 --- a/keyboards/sneakbox/disarray/staggered/keyboard.json +++ b/keyboards/sneakbox/disarray/staggered/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/snes_macropad/keyboard.json b/keyboards/snes_macropad/keyboard.json index 91ee332357..a7f00f3fd8 100644 --- a/keyboards/snes_macropad/keyboard.json +++ b/keyboards/snes_macropad/keyboard.json @@ -6,7 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": true, @@ -19,7 +18,6 @@ "driver": "vendor" }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0000", diff --git a/keyboards/soda/cherish/keyboard.json b/keyboards/soda/cherish/keyboard.json index b256e93965..9235fe3b3e 100644 --- a/keyboards/soda/cherish/keyboard.json +++ b/keyboards/soda/cherish/keyboard.json @@ -1,6 +1,5 @@ { "keyboard_name": "Cherish-75", - "url": "", "maintainer": "gezhaoyou", "manufacturer": "gezhaoyou", "usb": { diff --git a/keyboards/sofle/keyhive/keyboard.json b/keyboards/sofle/keyhive/keyboard.json index 8c76e875b0..720327b75d 100644 --- a/keyboards/sofle/keyhive/keyboard.json +++ b/keyboards/sofle/keyhive/keyboard.json @@ -1,5 +1,4 @@ { - "keyboard_name": "Sofle", "manufacturer": "Keyhive", "development_board": "elite_c", "usb": { diff --git a/keyboards/sofle/keyhive/readme.md b/keyboards/sofle/keyhive/readme.md deleted file mode 100644 index 3847dfe6bb..0000000000 --- a/keyboards/sofle/keyhive/readme.md +++ /dev/null @@ -1,54 +0,0 @@ -# Keyhive Sofle Keyboard - - - -Sofle is 6×4+5 keys column-staggered split keyboard. Based on Lily58, Corne and Helix keyboards. - -For details about the keyboard design, refer to Josef's blog: [Sofle Keyboard - a split keyboard based on Lily58 and Crkbd](https://josef-adamcik.cz/electronics/let-me-introduce-you-sofle-keyboard-split-keyboard-based-on-lily58.html) - -Build guide: [Keyhive Sofle RGB build guide](https://github.com/keyhive/build_guides/blob/master/docs/keyboards/sofle-rgb.md) - -* Keyboard Maintainer: [Winder](https://github.com/winder) -* Hardware Supported: Keyhive Sofle RGB, ProMicro / Elite-C -* Hardware Availability: [Keyhive](https://keyhive.xyz/shop/sofle) - -### Acknowledgements - -* Solartempest - the image on this page and most of the code is either copied directly or inspired by their fork. [Solartempest's fork.](https://github.com/solartempest/qmk_firmware/tree/master/keyboards/solartempest/sofle). -* [Keyhive fork](https://github.com/keyhive/qmk_firmware) defined all of the board settings. - -# Supported Keymaps - -The keyhive schematic has been slightly modified compared to the open source sofle and not all keymaps are compatible. - -* **default**: Basic functionality, no rgb, no VIA. -* [keyhive_via](../keymaps/keyhive_via/readme.md) - Includes rgblighting and special support for remapping encoders with VIA. -* **Other**: may work but backwards compatibility is not guaranteed or tested. - -# VIA Support -As of 1.3.1, the VIA tool does not support Keyhive/Sofle V2 out of the box. -See [keyhive_via](../keymaps/keyhive_via/readme.md) for details about configuring and using VIA. - -# Compiling - -Make example for this keyboard (after setting up your build environment): - - make sofle/keyhive:default - -## Flashing - -Flash using the correct command below (or use QMK Toolbox). These commands can be mixed if, for example, you have an Elite C on the left and a pro micro on the right. - -Press reset button on the keyboard when asked. - -Disconnect the first half, connect the second one and repeat the process. - - # for Pro Micro-based builds - make sofle/keyhive:default:avrdude-split-left - make sofle/keyhive:default:avrdude-split-right - - # for Elite C or DFU bootloader builds - make sofle/keyhive:default:dfu-split-left - make sofle/keyhive:default:dfu-split-right - -See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/sofle/keymaps/rgb_default/config.h b/keyboards/sofle/keymaps/rgb_default/config.h deleted file mode 100644 index 564133ce7a..0000000000 --- a/keyboards/sofle/keymaps/rgb_default/config.h +++ /dev/null @@ -1,124 +0,0 @@ - /* Copyright 2021 Dane Evans - * - * 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/>. -*/ - #pragma once - - -//#define USE_MATRIX_I2C - -/* Select hand configuration */ - -///https://thomasbaart.nl/2018/12/01/reducing-firmware-size-in-qmk/ - -#define CUSTOM_FONT - -#define CUSTOM_LAYER_READ //if you remove this it causes issues - needs better guarding - - -#define QUICK_TAP_TERM 0 -#ifdef TAPPING_TERM - #undef TAPPING_TERM - #define TAPPING_TERM 200 -#endif -#define ENCODER_DIRECTION_FLIP - - -#define RGBLIGHT_SLEEP -// -#define RGBLIGHT_LAYERS - -/* ws2812 RGB LED */ -#define WS2812_DI_PIN D3 - - -#ifdef RGB_MATRIX_ENABLE -#define RGBLIGHT_LED_COUNT 35 // Number of LEDs -#define RGBLIGHT_LED_COUNT 35 // Number of LEDs -#define RGB_MATRIX_LED_COUNT RGBLIGHT_LED_COUNT -#endif - -#ifdef RGBLIGHT_ENABLE - #undef RGBLIGHT_LED_COUNT - - //#define RGBLIGHT_EFFECT_BREATHING - #define RGBLIGHT_EFFECT_RAINBOW_MOOD - //#define RGBLIGHT_EFFECT_RAINBOW_SWIRL - //#define RGBLIGHT_EFFECT_SNAKE - //#define RGBLIGHT_EFFECT_KNIGHT - //#define RGBLIGHT_EFFECT_CHRISTMAS - //#define RGBLIGHT_EFFECT_STATIC_GRADIENT - //#define RGBLIGHT_EFFECT_RGB_TEST - //#define RGBLIGHT_EFFECT_ALTERNATING - //#define RGBLIGHT_EFFECT_TWINKLE - - #define RGBLIGHT_LED_COUNT 70 - #undef RGBLED_SPLIT - #define RGBLED_SPLIT { 35, 35 } // haven't figured out how to use this yet - - //#define RGBLIGHT_LED_COUNT 30 - #undef RGBLIGHT_LIMIT_VAL - #define RGBLIGHT_LIMIT_VAL 120 - #define RGBLIGHT_HUE_STEP 10 - #define RGBLIGHT_SAT_STEP 17 - #define RGBLIGHT_VAL_STEP 17 -#endif - -#ifdef RGB_MATRIX_ENABLE -# define RGB_MATRIX_KEYPRESSES // reacts to keypresses -// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses) -# define RGB_MATRIX_SLEEP // turn off effects when suspended -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -// # define RGB_MATRIX_LED_PROCESS_LIMIT (RGB_MATRIX_LED_COUNT + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness) -// # define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness) -# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 // limits maximum brightness of LEDs to 150 out of 255. Higher may cause the controller to crash. - -#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_GRADIENT_LEFT_RIGHT - -# define RGB_MATRIX_HUE_STEP 8 -# define RGB_MATRIX_SAT_STEP 8 -# define RGB_MATRIX_VAL_STEP 8 -# define RGB_MATRIX_SPD_STEP 10 - -/* Disable the animations you don't want/need. You will need to disable a good number of these * - * because they take up a lot of space. Disable until you can successfully compile your firmware. */ - // # undef ENABLE_RGB_MATRIX_ALPHAS_MODS - // # undef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN - // # undef ENABLE_RGB_MATRIX_BREATHING - // # undef ENABLE_RGB_MATRIX_CYCLE_ALL - // # undef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT - // # undef ENABLE_RGB_MATRIX_CYCLE_UP_DOWN - // # undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN - // # undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL - // # undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON - // # undef ENABLE_RGB_MATRIX_DUAL_BEACON - // # undef ENABLE_RGB_MATRIX_RAINBOW_BEACON - // # undef ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS - // # undef ENABLE_RGB_MATRIX_RAINDROPS - // # undef ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS - // # undef ENABLE_RGB_MATRIX_TYPING_HEATMAP - // # undef ENABLE_RGB_MATRIX_DIGITAL_RAIN - // # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE - // # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE - // # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE - // # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE - // # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS - // # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS - // # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS - // # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS - // # undef ENABLE_RGB_MATRIX_SPLASH - // # undef ENABLE_RGB_MATRIX_MULTISPLASH - // # undef ENABLE_RGB_MATRIX_SOLID_SPLASH - // # undef ENABLE_RGB_MATRIX_SOLID_MULTISPLASH -#endif diff --git a/keyboards/sofle/keymaps/rgb_default/keymap.c b/keyboards/sofle/keymaps/rgb_default/keymap.c deleted file mode 100644 index e805c20702..0000000000 --- a/keyboards/sofle/keymaps/rgb_default/keymap.c +++ /dev/null @@ -1,390 +0,0 @@ - - /* Copyright 2021 Dane Evans - * - * 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/>. - */ - // SOFLE RGB -#include <stdio.h> - -#include QMK_KEYBOARD_H - -#define INDICATOR_BRIGHTNESS 30 - -#define HSV_OVERRIDE_HELP(h, s, v, Override) h, s , Override -#define HSV_OVERRIDE(hsv, Override) HSV_OVERRIDE_HELP(hsv,Override) - -// Light combinations -#define SET_INDICATORS(hsv) \ - {0, 1, HSV_OVERRIDE_HELP(hsv, INDICATOR_BRIGHTNESS)}, \ - {35+0, 1, hsv} -#define SET_UNDERGLOW(hsv) \ - {1, 6, hsv}, \ - {35+1, 6,hsv} -#define SET_NUMPAD(hsv) \ - {35+15, 5, hsv},\ - {35+22, 3, hsv},\ - {35+27, 3, hsv} -#define SET_NUMROW(hsv) \ - {10, 2, hsv}, \ - {20, 2, hsv}, \ - {30, 2, hsv}, \ - {35+ 10, 2, hsv}, \ - {35+ 20, 2, hsv}, \ - {35+ 30, 2, hsv} -#define SET_INNER_COL(hsv) \ - {33, 4, hsv}, \ - {35+ 33, 4, hsv} - -#define SET_OUTER_COL(hsv) \ - {7, 4, hsv}, \ - {35+ 7, 4, hsv} -#define SET_THUMB_CLUSTER(hsv) \ - {25, 2, hsv}, \ - {35+ 25, 2, hsv} -#define SET_LAYER_ID(hsv) \ - {0, 1, HSV_OVERRIDE_HELP(hsv, INDICATOR_BRIGHTNESS)}, \ - {35+0, 1, HSV_OVERRIDE_HELP(hsv, INDICATOR_BRIGHTNESS)}, \ - {1, 6, hsv}, \ - {35+1, 6, hsv}, \ - {7, 4, hsv}, \ - {35+ 7, 4, hsv}, \ - {25, 2, hsv}, \ - {35+ 25, 2, hsv} - - -enum sofle_layers { - _DEFAULTS = 0, - _QWERTY = 0, - _COLEMAK, - _COLEMAKDH, - _LOWER, - _RAISE, - _ADJUST, - _NUMPAD, - _SWITCH -}; - -enum custom_keycodes { - KC_LOWER = SAFE_RANGE, - KC_RAISE, - KC_ADJUST, - KC_D_MUTE -}; - -#define KC_QWERTY PDF(_QWERTY) -#define KC_COLEMAK PDF(_COLEMAK) -#define KC_COLEMAKDH PDF(_COLEMAKDH) - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[_QWERTY] = LAYOUT( - KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, LT(_SWITCH,KC_6), KC_7, KC_8, KC_9, KC_0, KC_GRV, - LT(_NUMPAD,KC_TAB),KC_Q,KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, - KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, - KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_D_MUTE, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, - KC_BSPC, KC_LGUI, KC_LOWER, KC_SPC, KC_ENT, KC_SPC, KC_ENT, KC_RAISE,KC_RCTL, KC_RALT -), -[_COLEMAK] = LAYOUT( - _______, KC_1, KC_2, KC_3, KC_4, KC_5, LT(_SWITCH,KC_6), KC_7, KC_8, KC_9, KC_0, _______, - _______, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, _______, - _______, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, _______, - _______, KC_Z, KC_X, KC_C, KC_V, KC_B, _______, _______, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ -), -[_COLEMAKDH] = LAYOUT( - _______, KC_1, KC_2, KC_3, KC_4, KC_5, LT(_SWITCH,KC_6), KC_7, KC_8, KC_9, KC_0, _______, - _______, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, _______, - _______, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, _______, - _______, KC_Z, KC_X, KC_C, KC_D, KC_V, _______, _______, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ -), -[_LOWER] = LAYOUT( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_F12, - _______, XXXXXXX, XXXXXXX, XXXXXXX, KC_WH_U, KC_PGUP, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, KC_DEL, - _______, XXXXXXX, XXXXXXX, XXXXXXX, KC_WH_D, KC_PGDN, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ -), -[_RAISE] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_INS, KC_PSCR, KC_APP, XXXXXXX, XXXXXXX, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, - _______, KC_LALT, KC_LCTL, KC_LSFT, XXXXXXX, KC_CAPS, KC_MINS, KC_EQL, KC_LCBR, KC_RCBR, KC_PIPE, KC_GRV, - _______, KC_UNDO, KC_CUT, KC_COPY, KC_PASTE, XXXXXXX, _______, _______, KC_UNDS, KC_PLUS, KC_LBRC, KC_RBRC, KC_BSLS, KC_TILD, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ -), -[_ADJUST] = LAYOUT( - EE_CLR, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - UG_TOGG, UG_HUEU, UG_SATU, UG_VALU,KC_COLEMAKDH,KC_COLEMAK, C(G(KC_LEFT)), XXXXXXX, XXXXXXX,C(G(KC_RGHT)),XXXXXXX,XXXXXXX, - UG_NEXT, UG_HUED, UG_SATD, UG_VALD, XXXXXXX,KC_QWERTY,XXXXXXX, XXXXXXX, XXXXXXX, KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX, XXXXXXX, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ -), -[_NUMPAD] = LAYOUT( - _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, KC_NUM, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_CIRC, KC_P7, KC_P8, KC_P9, KC_ASTR, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MINS, KC_P4, KC_P5, KC_P6, KC_EQL, KC_PIPE, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, KC_PLUS, KC_P1, KC_P2, KC_P3, KC_SLSH, _______, - _______, OSM(MOD_MEH), _______, _______, _______, _______, _______, KC_P0, KC_PDOT, _______ -), -[_SWITCH] = LAYOUT( - _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - TO(0), TO(1), TO(2), TO(3), TO(4), TO(5), TO(6), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, - XXXXXXX, XXXXXXX, KC_BRIU, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, EE_CLR, -KC_SYSTEM_SLEEP,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX -), -}; - -#ifdef RGBLIGHT_ENABLE -char layer_state_str[70]; -// Now define the array of layers. Later layers take precedence - -// QWERTY, -// Light on inner column and underglow -const rgblight_segment_t PROGMEM layer_qwerty_lights[] = RGBLIGHT_LAYER_SEGMENTS( - SET_LAYER_ID(HSV_RED) - -); -const rgblight_segment_t PROGMEM layer_colemakdh_lights[] = RGBLIGHT_LAYER_SEGMENTS( - SET_LAYER_ID(HSV_PINK) -); - -// _NUM, -// Light on outer column and underglow -const rgblight_segment_t PROGMEM layer_num_lights[] = RGBLIGHT_LAYER_SEGMENTS( - SET_LAYER_ID(HSV_TEAL) - -); -// _SYMBOL, -// Light on inner column and underglow -const rgblight_segment_t PROGMEM layer_symbol_lights[] = RGBLIGHT_LAYER_SEGMENTS( - SET_LAYER_ID(HSV_BLUE) - - ); -// _COMMAND, -// Light on inner column and underglow -const rgblight_segment_t PROGMEM layer_command_lights[] = RGBLIGHT_LAYER_SEGMENTS( - SET_LAYER_ID(HSV_PURPLE) -); - -//_NUMPAD -const rgblight_segment_t PROGMEM layer_numpad_lights[] = RGBLIGHT_LAYER_SEGMENTS( - SET_INDICATORS(HSV_ORANGE), - SET_UNDERGLOW(HSV_ORANGE), - SET_NUMPAD(HSV_BLUE), - {7, 4, HSV_ORANGE}, - {25, 2, HSV_ORANGE}, - {35+6, 4, HSV_ORANGE}, - {35+25, 2, HSV_ORANGE} - ); -// _SWITCHER // light up top row -const rgblight_segment_t PROGMEM layer_switcher_lights[] = RGBLIGHT_LAYER_SEGMENTS( - SET_LAYER_ID(HSV_GREEN), - SET_NUMROW(HSV_GREEN) -); - -const rgblight_segment_t* const PROGMEM my_rgb_layers[] = RGBLIGHT_LAYERS_LIST( - - layer_qwerty_lights, - layer_num_lights,// overrides layer 1 - layer_symbol_lights, - layer_command_lights, - layer_numpad_lights, - layer_switcher_lights, // Overrides other layers - layer_colemakdh_lights -); - -layer_state_t layer_state_set_user(layer_state_t state) { - rgblight_set_layer_state(0, layer_state_cmp(state, _DEFAULTS) && layer_state_cmp(default_layer_state,_QWERTY)); - rgblight_set_layer_state(7, layer_state_cmp(state, _DEFAULTS) && layer_state_cmp(default_layer_state,_COLEMAKDH)); - - - rgblight_set_layer_state(1, layer_state_cmp(state, _LOWER)); - rgblight_set_layer_state(2, layer_state_cmp(state, _RAISE)); - rgblight_set_layer_state(3, layer_state_cmp(state, _ADJUST)); - rgblight_set_layer_state(4, layer_state_cmp(state, _NUMPAD)); - rgblight_set_layer_state(5, layer_state_cmp(state, _SWITCH)); - return state; -} -void keyboard_post_init_user(void) { - // Enable the LED layers - rgblight_layers = my_rgb_layers; - - rgblight_mode(10);// haven't found a way to set this in a more useful way - -} -#endif - -#ifdef OLED_ENABLE - -static void render_logo(void) { - static const char PROGMEM qmk_logo[] = { - 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, 0x90, 0x91, 0x92, 0x93, 0x94, - 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF, 0xB0, 0xB1, 0xB2, 0xB3, 0xB4, - 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0x00 - }; - - oled_write_P(qmk_logo, false); -} - -static void print_status_narrow(void) { - // Print current mode - oled_write_P(PSTR("\n\n"), false); - oled_write_ln_P(PSTR("Dane\nEvans"), false); - - oled_write_ln_P(PSTR(""), false); - - //snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Undef-%ld", layer_state) - - - switch (get_highest_layer(default_layer_state)) { - case _QWERTY: - oled_write_ln_P(PSTR("Qwrt"), false); - break; - case _COLEMAK: - oled_write_ln_P(PSTR("Clmk"), false); - break; - case _COLEMAKDH: - oled_write_ln_P(PSTR("CmkDH"), false); - break; - - default: - oled_write_ln_P(PSTR("Undef"), false); - } - oled_write_P(PSTR("\n\n"), false); - // Print current layer - oled_write_ln_P(PSTR("LAYER"), false); - switch (get_highest_layer(layer_state)) { - case _COLEMAK: - case _QWERTY: - case _COLEMAKDH: - oled_write_P(PSTR("Base\n"), false); - break; - case _RAISE: - oled_write_P(PSTR("Raise"), false); - break; - case _LOWER: - oled_write_P(PSTR("Lower"), false); - break; - case _ADJUST: - oled_write_P(PSTR("Adj\n"), false); - break; - case _NUMPAD: - oled_write_P(PSTR("Nump\n"), false); - break; - case _SWITCH: - oled_write_P(PSTR("Swit\n"), false); - break; - default: - oled_write_ln_P(PSTR("Undef"), false); - } -} - -oled_rotation_t oled_init_user(oled_rotation_t rotation) { - if (is_keyboard_master()) { - return OLED_ROTATION_270; - } - return rotation; -} - -bool oled_task_user(void) { - if (is_keyboard_master()) { - print_status_narrow(); - } else { - render_logo(); - } - return false; -} - -#endif - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case KC_LOWER: - if (record->event.pressed) { - layer_on(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - case KC_RAISE: - if (record->event.pressed) { - layer_on(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - case KC_ADJUST: - if (record->event.pressed) { - layer_on(_ADJUST); - } else { - layer_off(_ADJUST); - } - return false; - case KC_D_MUTE: - if (record->event.pressed) { - register_mods(mod_config(MOD_MEH)); - register_code(KC_UP); - } else { - unregister_mods(mod_config(MOD_MEH)); - unregister_code(KC_UP); - } - } - return true; -} - -#ifdef ENCODER_ENABLE - -bool encoder_update_user(uint8_t index, bool clockwise) { - if (index == 0) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - } else if (index == 1) { - switch (get_highest_layer(layer_state)) { - case _COLEMAK: - case _QWERTY: - case _COLEMAKDH: - if (clockwise) { - tap_code(KC_PGDN); - } else { - tap_code(KC_PGUP); - } - break; - case _RAISE: - case _LOWER: - if (clockwise) { - tap_code(KC_DOWN); - } else { - tap_code(KC_UP); - } - break; - default: - if (clockwise) { - tap_code(KC_WH_D); - } else { - tap_code(KC_WH_U); - } - break; - } - } - return true; -} - -#endif diff --git a/keyboards/sofle/keymaps/rgb_default/rules.mk b/keyboards/sofle/keymaps/rgb_default/rules.mk deleted file mode 100644 index 0d18161a0d..0000000000 --- a/keyboards/sofle/keymaps/rgb_default/rules.mk +++ /dev/null @@ -1,7 +0,0 @@ -MOUSEKEY_ENABLE = yes -EXTRAKEY_ENABLE = yes -CONSOLE_ENABLE = no -RGBLIGHT_ENABLE = yes -ENCODER_ENABLE = yes -LTO_ENABLE = yes -OLED_ENABLE = yes diff --git a/keyboards/sofle/readme.md b/keyboards/sofle/readme.md index 7e8ef215c2..6af2a93ec5 100644 --- a/keyboards/sofle/readme.md +++ b/keyboards/sofle/readme.md @@ -4,24 +4,37 @@ Sofle is 6×4+5 keys column-staggered split keyboard. Based on Lily58, Corne and Helix keyboards. -More details about the keyboard on my blog: [Let me introduce you SofleKeyboard - a split keyboard based on Lily58 and Crkbd](https://josef-adamcik.cz/electronics/let-me-introduce-you-sofle-keyboard-split-keyboard-based-on-lily58.html) - -The current (temporary) build guide and a build log is available here: [SofleKeyboard build log/guide](https://josef-adamcik.cz/electronics/soflekeyboard-build-log-and-build-guide.html) +More details about the keyboard and build guides can be found here: [Sofle Keyboard Build Log and Guide](https://josefadamcik.github.io/SofleKeyboard) * Keyboard Maintainer: [Josef Adamcik](https://josef-adamcik.cz) [Twitter:@josefadamcik](https://twitter.com/josefadamcik) * Hardware Supported: SofleKeyboard PCB, ProMicro * Hardware Availability: [PCB & Case Data](https://github.com/josefadamcik/SofleKeyboard) +## Firmware Revisions +- `sofle/rev1` is used for v1, v2, and RGB PCBs (**NOT** RGB PCBs purchased from [Keyhive](https://keyhive.xyz)) +- `sofle/keyhive` is used for PCBs purchased from [Keyhive](https://keyhive.xyz/shop/sofle) +- [`keyboards/sofle_choc`](../sofle_choc/) is used for Choc PCBs + Make example for this keyboard (after setting up your build environment): - make sofle:default + make sofle/rev1:default + make sofle/keyhive:default -Flash the default keymap: +Flashing example for this keyboard: - make sofle:default:avrdude + make sofle/rev1:default:flash + make sofle/keyhive:default:flash Press reset button on he keyboard when asked. Disconnect the first half, connect the second one and repeat the process. See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix +* **Physical reset button**: Briefly press the button near the TRRS connector. Quickly double-tap if you are using Pro Micro. +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available diff --git a/keyboards/sofle/rev1/readme.md b/keyboards/sofle/rev1/readme.md deleted file mode 100644 index 1d229030c4..0000000000 --- a/keyboards/sofle/rev1/readme.md +++ /dev/null @@ -1,27 +0,0 @@ -# Sofle Keyboard - - - -Sofle is 6×4+5 keys column-staggered split keyboard. Based on Lily58, Corne and Helix keyboards. - -More details about the keyboard on my blog: [Let me introduce you SofleKeyboard - a split keyboard based on Lily58 and Crkbd](https://josef-adamcik.cz/electronics/let-me-introduce-you-sofle-keyboard-split-keyboard-based-on-lily58.html) - -The current (temporary) build guide and a build log is available here: [SofleKeyboard build log/guide](https://josef-adamcik.cz/electronics/soflekeyboard-build-log-and-build-guide.html) - -* Keyboard Maintainer: [Josef Adamcik](https://josef-adamcik.cz) [Twitter:@josefadamcik](https://twitter.com/josefadamcik) -* Hardware Supported: SofleKeyboard PCB, ProMicro -* Hardware Availability: [PCB & Case Data](https://github.com/josefadamcik/SofleKeyboard) - -Make example for this keyboard (after setting up your build environment): - - make sofle:default - -Flashing example for this keyboard: - - make sofle:default:flash - -Press reset button on he keyboard when asked. - -Disconnect the first half, connect the second one and repeat the process. - -See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/soup10/keyboard.json b/keyboards/soup10/keyboard.json index f4e1947652..54b9fa9cf6 100644 --- a/keyboards/soup10/keyboard.json +++ b/keyboards/soup10/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/sowbug/68keys/keyboard.json b/keyboards/sowbug/68keys/keyboard.json index 7143f341b5..be4ffbf9a9 100644 --- a/keyboards/sowbug/68keys/keyboard.json +++ b/keyboards/sowbug/68keys/keyboard.json @@ -63,8 +63,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/sowbug/ansi_tkl/keyboard.json b/keyboards/sowbug/ansi_tkl/keyboard.json index 837e08a59e..50b9d8095a 100644 --- a/keyboards/sowbug/ansi_tkl/keyboard.json +++ b/keyboards/sowbug/ansi_tkl/keyboard.json @@ -63,8 +63,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/soy20/keyboard.json b/keyboards/soy20/keyboard.json index 77524eff6c..901aa9e868 100644 --- a/keyboards/soy20/keyboard.json +++ b/keyboards/soy20/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Soy20", "manufacturer": "drewkeys", - "url": "", "maintainer": "twholt", "usb": { "vid": "0x4452", @@ -11,7 +10,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/spaceholdings/nebula12/keyboard.json b/keyboards/spaceholdings/nebula12/keyboard.json index 2b170e8e61..7157cfc05b 100755 --- a/keyboards/spaceholdings/nebula12/keyboard.json +++ b/keyboards/spaceholdings/nebula12/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NEBULA12", "manufacturer": "Yiancar-Designs", - "url": "", "maintainer": "yiancar", "usb": { "vid": "0x8968", diff --git a/keyboards/spaceholdings/nebula12b/keyboard.json b/keyboards/spaceholdings/nebula12b/keyboard.json index 961e971885..6990da485b 100755 --- a/keyboards/spaceholdings/nebula12b/keyboard.json +++ b/keyboards/spaceholdings/nebula12b/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NEBULA12B", "manufacturer": "Yiancar-Designs", - "url": "", "maintainer": "yiancar", "usb": { "vid": "0x8968", @@ -65,8 +64,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/spaceholdings/nebula68/keyboard.json b/keyboards/spaceholdings/nebula68/keyboard.json index 47cab7a5b0..8eb6d67a03 100755 --- a/keyboards/spaceholdings/nebula68/keyboard.json +++ b/keyboards/spaceholdings/nebula68/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NEBULA68", "manufacturer": "Yiancar-Designs", - "url": "", "maintainer": "yiancar", "usb": { "vid": "0x8968", diff --git a/keyboards/spaceholdings/nebula68b/info.json b/keyboards/spaceholdings/nebula68b/info.json index 3a7f6f9b25..1c279ee715 100644 --- a/keyboards/spaceholdings/nebula68b/info.json +++ b/keyboards/spaceholdings/nebula68b/info.json @@ -1,6 +1,5 @@ { "manufacturer": "Yiancar-Designs", - "url": "", "maintainer": "yiancar", "usb": { "vid": "0x8968", @@ -65,8 +64,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/spaceman/2_milk/keyboard.json b/keyboards/spaceman/2_milk/keyboard.json index 4fdef6bace..aed735c58f 100644 --- a/keyboards/spaceman/2_milk/keyboard.json +++ b/keyboards/spaceman/2_milk/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "2% Milk", "manufacturer": "Spaceman", - "url": "", "maintainer": "Spaceman", "usb": { "vid": "0x5342", diff --git a/keyboards/spaceman/pancake/rev1/info.json b/keyboards/spaceman/pancake/rev1/info.json index 0814e11244..9d6f30ab51 100644 --- a/keyboards/spaceman/pancake/rev1/info.json +++ b/keyboards/spaceman/pancake/rev1/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Pancake", "manufacturer": "Spaceman", - "url": "", "maintainer": "Spaceman", "usb": { "vid": "0x5342", diff --git a/keyboards/spaceman/pancake/rev2/keyboard.json b/keyboards/spaceman/pancake/rev2/keyboard.json index 88bf2a0b9f..2e7dd8f6b4 100644 --- a/keyboards/spaceman/pancake/rev2/keyboard.json +++ b/keyboards/spaceman/pancake/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Pancake 2", "manufacturer": "Spaceman", - "url": "", "maintainer": "Spaceman", "usb": { "vid": "0x5342", diff --git a/keyboards/spaceman/yun65/keyboard.json b/keyboards/spaceman/yun65/keyboard.json index 017de06abb..1f57af8e0d 100644 --- a/keyboards/spaceman/yun65/keyboard.json +++ b/keyboards/spaceman/yun65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Yun 65", "manufacturer": "Spaceman", - "url": "", "maintainer": "Spaceman", "usb": { "vid": "0x5342", diff --git a/keyboards/spacetime/info.json b/keyboards/spacetime/info.json index 4e3682a8c2..e103f58ebb 100644 --- a/keyboards/spacetime/info.json +++ b/keyboards/spacetime/info.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/sparrow62/keyboard.json b/keyboards/sparrow62/keyboard.json index 96447b6a36..66efa2288b 100644 --- a/keyboards/sparrow62/keyboard.json +++ b/keyboards/sparrow62/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/specskeys/keyboard.json b/keyboards/specskeys/keyboard.json index 104b1ea13d..73d34e4a39 100644 --- a/keyboards/specskeys/keyboard.json +++ b/keyboards/specskeys/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Specskeys", "manufacturer": "Specs32", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xCAFE", diff --git a/keyboards/spiderisland/split78/keyboard.json b/keyboards/spiderisland/split78/keyboard.json index cd49755b0f..4a818470f8 100644 --- a/keyboards/spiderisland/split78/keyboard.json +++ b/keyboards/spiderisland/split78/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Split 78-key", "manufacturer": "SpiderIsland", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/split67/keyboard.json b/keyboards/split67/keyboard.json index 46b571420a..6462149d3b 100644 --- a/keyboards/split67/keyboard.json +++ b/keyboards/split67/keyboard.json @@ -37,7 +37,6 @@ "pin": "D0" } }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0xBBBC", diff --git a/keyboards/splitish/keyboard.json b/keyboards/splitish/keyboard.json index 3df635e6bc..986a08709f 100644 --- a/keyboards/splitish/keyboard.json +++ b/keyboards/splitish/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Splitish", "manufacturer": "Reid Schneyer", - "url": "", "maintainer": "RSchneyer", "usb": { "vid": "0xFEED", @@ -11,7 +10,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/splitkb/halcyon/kyria/rev4/keyboard.json b/keyboards/splitkb/halcyon/kyria/rev4/keyboard.json index aca43a8a16..7f699f2584 100755 --- a/keyboards/splitkb/halcyon/kyria/rev4/keyboard.json +++ b/keyboards/splitkb/halcyon/kyria/rev4/keyboard.json @@ -65,9 +65,6 @@ "splash": true, "typing_heatmap": true }, - "default": { - "animation": "cycle_left_right" - }, "driver": "ws2812", "layout": [ {"x": 75, "y": 2, "flags": 2}, diff --git a/keyboards/splitography/keyboard.json b/keyboards/splitography/keyboard.json index 947622096c..3fd26500cd 100644 --- a/keyboards/splitography/keyboard.json +++ b/keyboards/splitography/keyboard.json @@ -9,9 +9,7 @@ "nkro": true, "bootmagic": true, "mousekey": false, - "extrakey": true, - "console": false, - "command": false + "extrakey": true }, "qmk": { "locking": { diff --git a/keyboards/splitography/keymaps/default/keymap.c b/keyboards/splitography/keymaps/default/keymap.c index 9c6c7d6b26..5d26eb9682 100644 --- a/keyboards/splitography/keymaps/default/keymap.c +++ b/keyboards/splitography/keymaps/default/keymap.c @@ -214,9 +214,9 @@ void plover(keyrecord_t *record) { if (!eeconfig_is_enabled()) { eeconfig_init(); } - keymap_config.raw = eeconfig_read_keymap(); + eeconfig_read_keymap(&keymap_config); keymap_config.nkro = 1; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } } diff --git a/keyboards/splitography/keymaps/default_with_ctl_shft_alt_switched/keymap.c b/keyboards/splitography/keymaps/default_with_ctl_shft_alt_switched/keymap.c index 787f448ffb..a3cb183758 100644 --- a/keyboards/splitography/keymaps/default_with_ctl_shft_alt_switched/keymap.c +++ b/keyboards/splitography/keymaps/default_with_ctl_shft_alt_switched/keymap.c @@ -214,9 +214,9 @@ void plover(keyrecord_t *record) { if (!eeconfig_is_enabled()) { eeconfig_init(); } - keymap_config.raw = eeconfig_read_keymap(); + eeconfig_read_keymap(&keymap_config); keymap_config.nkro = 1; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } } diff --git a/keyboards/splitography/keymaps/dvorak/keymap.c b/keyboards/splitography/keymaps/dvorak/keymap.c index 992cfd0abb..0edec7043c 100644 --- a/keyboards/splitography/keymaps/dvorak/keymap.c +++ b/keyboards/splitography/keymaps/dvorak/keymap.c @@ -214,9 +214,9 @@ void plover(keyrecord_t *record) { if (!eeconfig_is_enabled()) { eeconfig_init(); } - keymap_config.raw = eeconfig_read_keymap(); + eeconfig_read_keymap(&keymap_config); keymap_config.nkro = 1; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } } diff --git a/keyboards/sporewoh/banime40/keyboard.json b/keyboards/sporewoh/banime40/keyboard.json index dfe71070a1..39a60e9b56 100644 --- a/keyboards/sporewoh/banime40/keyboard.json +++ b/keyboards/sporewoh/banime40/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/star75/keyboard.json b/keyboards/star75/keyboard.json index e4ea684a0f..90f478ff60 100644 --- a/keyboards/star75/keyboard.json +++ b/keyboards/star75/keyboard.json @@ -34,8 +34,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/stello65/beta/keyboard.json b/keyboards/stello65/beta/keyboard.json index 5dbc3b1338..81a4b6924f 100644 --- a/keyboards/stello65/beta/keyboard.json +++ b/keyboards/stello65/beta/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Stello65", "manufacturer": "@wekey", - "url": "", "maintainer": "@wekey", "usb": { "vid": "0x5559", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/stello65/hs_rev1/keyboard.json b/keyboards/stello65/hs_rev1/keyboard.json index 783b73c599..072ccb97ca 100644 --- a/keyboards/stello65/hs_rev1/keyboard.json +++ b/keyboards/stello65/hs_rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Stello65", "manufacturer": "@wekey", - "url": "", "maintainer": "@wekey", "usb": { "vid": "0x5559", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/stello65/sl_rev1/keyboard.json b/keyboards/stello65/sl_rev1/keyboard.json index 8be7b07d0a..0ed80b018a 100644 --- a/keyboards/stello65/sl_rev1/keyboard.json +++ b/keyboards/stello65/sl_rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Stello65", "manufacturer": "@wekey", - "url": "", "maintainer": "@wekey", "usb": { "vid": "0x5559", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/stenokeyboards/the_uni/pro_micro/keyboard.json b/keyboards/stenokeyboards/the_uni/pro_micro/keyboard.json index 03466935b0..90d6187434 100644 --- a/keyboards/stenokeyboards/the_uni/pro_micro/keyboard.json +++ b/keyboards/stenokeyboards/the_uni/pro_micro/keyboard.json @@ -5,8 +5,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": true, diff --git a/keyboards/stenokeyboards/the_uni/rp_2040/keyboard.json b/keyboards/stenokeyboards/the_uni/rp_2040/keyboard.json index 1ca94185ab..e1753f2b84 100644 --- a/keyboards/stenokeyboards/the_uni/rp_2040/keyboard.json +++ b/keyboards/stenokeyboards/the_uni/rp_2040/keyboard.json @@ -5,8 +5,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/stenokeyboards/the_uni/usb_c/keyboard.json b/keyboards/stenokeyboards/the_uni/usb_c/keyboard.json index efe3b979be..81639fe32b 100644 --- a/keyboards/stenokeyboards/the_uni/usb_c/keyboard.json +++ b/keyboards/stenokeyboards/the_uni/usb_c/keyboard.json @@ -5,8 +5,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": true, diff --git a/keyboards/sthlmkb/lagom/keyboard.json b/keyboards/sthlmkb/lagom/keyboard.json index e30455109d..a3bacac77e 100644 --- a/keyboards/sthlmkb/lagom/keyboard.json +++ b/keyboards/sthlmkb/lagom/keyboard.json @@ -6,8 +6,6 @@ "development_board": "promicro", "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "debug": false, "mousekey": false, diff --git a/keyboards/sthlmkb/litl/keyboard.json b/keyboards/sthlmkb/litl/keyboard.json index 50960dd6d0..32f7c1852d 100644 --- a/keyboards/sthlmkb/litl/keyboard.json +++ b/keyboards/sthlmkb/litl/keyboard.json @@ -7,8 +7,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "debug": false, "mousekey": false, diff --git a/keyboards/stratos/keyboard.json b/keyboards/stratos/keyboard.json index 842c9b87a3..b1a1a15da0 100644 --- a/keyboards/stratos/keyboard.json +++ b/keyboards/stratos/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "stratos", "manufacturer": "eggyolk", - "url": "", "maintainer": "kb-elmo", "usb": { "vid": "0xD5D0", @@ -32,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/strech/soulstone/keyboard.json b/keyboards/strech/soulstone/keyboard.json index 32671eba11..67a65fbd69 100644 --- a/keyboards/strech/soulstone/keyboard.json +++ b/keyboards/strech/soulstone/keyboard.json @@ -13,8 +13,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true }, "qmk": { diff --git a/keyboards/stront/keyboard.json b/keyboards/stront/keyboard.json index 573730a12b..250d5b56e1 100644 --- a/keyboards/stront/keyboard.json +++ b/keyboards/stront/keyboard.json @@ -85,7 +85,6 @@ "features": { "backlight": true, "bootmagic": true, - "console": false, "encoder": true, "extrakey": true, "nkro": false, diff --git a/keyboards/studiokestra/bourgeau/keyboard.json b/keyboards/studiokestra/bourgeau/keyboard.json index 3e0111a618..22e4235415 100644 --- a/keyboards/studiokestra/bourgeau/keyboard.json +++ b/keyboards/studiokestra/bourgeau/keyboard.json @@ -32,7 +32,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/studiokestra/cascade/keyboard.json b/keyboards/studiokestra/cascade/keyboard.json index 8e7673da0e..b6a11688c2 100644 --- a/keyboards/studiokestra/cascade/keyboard.json +++ b/keyboards/studiokestra/cascade/keyboard.json @@ -32,7 +32,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/studiokestra/fairholme/keyboard.json b/keyboards/studiokestra/fairholme/keyboard.json index f789c2059b..413218e8bd 100644 --- a/keyboards/studiokestra/fairholme/keyboard.json +++ b/keyboards/studiokestra/fairholme/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -23,8 +21,7 @@ "vid": "0x7C10" }, "indicators": { - "caps_lock": "B10", - "on_state": 1 + "caps_lock": "B10" }, "community_layouts": ["60_ansi", "60_ansi_split_bs_rshift", "60_ansi_tsangan", "60_ansi_tsangan_split_bs_rshift", "60_ansi_wkl", "60_ansi_wkl_split_bs_rshift", "60_hhkb", "60_iso", "60_iso_split_bs_rshift", "60_iso_tsangan", "60_iso_tsangan_split_bs_rshift", "60_iso_wkl", "60_iso_wkl_split_bs_rshift"], "layouts": { diff --git a/keyboards/studiokestra/frl84/keyboard.json b/keyboards/studiokestra/frl84/keyboard.json index d131b09eac..c5f5f16bdb 100644 --- a/keyboards/studiokestra/frl84/keyboard.json +++ b/keyboards/studiokestra/frl84/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -45,7 +43,6 @@ } }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0F84", diff --git a/keyboards/studiokestra/galatea/rev1/keyboard.json b/keyboards/studiokestra/galatea/rev1/keyboard.json index ff2adbce4d..ea69d22669 100644 --- a/keyboards/studiokestra/galatea/rev1/keyboard.json +++ b/keyboards/studiokestra/galatea/rev1/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -23,7 +21,6 @@ "rows": ["D1", "D0", "B0", "B7", "E6", "B3", "B6", "C6", "D6", "D7", "B4", "D3"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x8801", diff --git a/keyboards/studiokestra/galatea/rev2/keyboard.json b/keyboards/studiokestra/galatea/rev2/keyboard.json index 115b5684cd..d324f66215 100644 --- a/keyboards/studiokestra/galatea/rev2/keyboard.json +++ b/keyboards/studiokestra/galatea/rev2/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -24,7 +22,6 @@ "rows": ["D1", "D0", "B0", "B7", "E6", "B3", "B6", "C6", "D6", "D7", "B4", "D3"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x8802", @@ -40,7 +37,6 @@ }, "rgblight": { "led_count": 24, - "hue_steps": 8, "saturation_steps": 8, "brightness_steps": 8, "max_brightness": 200, diff --git a/keyboards/studiokestra/galatea/rev3/keyboard.json b/keyboards/studiokestra/galatea/rev3/keyboard.json index a4b07bb4df..b5a5d58762 100644 --- a/keyboards/studiokestra/galatea/rev3/keyboard.json +++ b/keyboards/studiokestra/galatea/rev3/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -24,7 +22,6 @@ "rows": ["GP3", "GP4", "GP1", "GP2", "GP5", "GP29", "GP20", "GP19", "GP17", "GP16", "GP13", "GP12"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x8803", @@ -36,7 +33,6 @@ }, "rgblight": { "led_count": 24, - "hue_steps": 8, "saturation_steps": 8, "brightness_steps": 8, "max_brightness": 200, diff --git a/keyboards/studiokestra/line_friends_tkl/keyboard.json b/keyboards/studiokestra/line_friends_tkl/keyboard.json index d8902e2a2f..5aa286b92e 100644 --- a/keyboards/studiokestra/line_friends_tkl/keyboard.json +++ b/keyboards/studiokestra/line_friends_tkl/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -20,7 +18,6 @@ }, "indicators": { "caps_lock": "B6", - "on_state": 1, "scroll_lock": "D2" }, "matrix_pins": { diff --git a/keyboards/suavity/ehan/keyboard.json b/keyboards/suavity/ehan/keyboard.json index 5a6675bfc3..acc470c8b6 100755 --- a/keyboards/suavity/ehan/keyboard.json +++ b/keyboards/suavity/ehan/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ehan", "manufacturer": "Suavity Designs", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5344", diff --git a/keyboards/subatomic/keyboard.json b/keyboards/subatomic/keyboard.json index 0816130bbb..150bebf1cb 100644 --- a/keyboards/subatomic/keyboard.json +++ b/keyboards/subatomic/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Subatomic", "manufacturer": "OLKB", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "midi": true, "mousekey": false, diff --git a/keyboards/subrezon/la_nc/keyboard.json b/keyboards/subrezon/la_nc/keyboard.json index 471bf09051..9a9a511fbf 100644 --- a/keyboards/subrezon/la_nc/keyboard.json +++ b/keyboards/subrezon/la_nc/keyboard.json @@ -9,7 +9,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/subrezon/lancer/keyboard.json b/keyboards/subrezon/lancer/keyboard.json index cf678c84bc..571cf4c8ad 100644 --- a/keyboards/subrezon/lancer/keyboard.json +++ b/keyboards/subrezon/lancer/keyboard.json @@ -14,8 +14,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/suikagiken/suika15tone/keyboard.json b/keyboards/suikagiken/suika15tone/keyboard.json index de3c8f33f3..7cfa5a4fb0 100644 --- a/keyboards/suikagiken/suika15tone/keyboard.json +++ b/keyboards/suikagiken/suika15tone/keyboard.json @@ -7,8 +7,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "midi": true, "mousekey": true, diff --git a/keyboards/suikagiken/suika27melo/keyboard.json b/keyboards/suikagiken/suika27melo/keyboard.json index cba2561129..26b57f7001 100644 --- a/keyboards/suikagiken/suika27melo/keyboard.json +++ b/keyboards/suikagiken/suika27melo/keyboard.json @@ -7,8 +7,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "midi": true, "mousekey": true, diff --git a/keyboards/suikagiken/suika83opti/keyboard.json b/keyboards/suikagiken/suika83opti/keyboard.json index d9876434fe..18128b05f8 100644 --- a/keyboards/suikagiken/suika83opti/keyboard.json +++ b/keyboards/suikagiken/suika83opti/keyboard.json @@ -7,8 +7,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/suikagiken/suika85ergo/keyboard.json b/keyboards/suikagiken/suika85ergo/keyboard.json index e0514dfab8..6274f56f7c 100644 --- a/keyboards/suikagiken/suika85ergo/keyboard.json +++ b/keyboards/suikagiken/suika85ergo/keyboard.json @@ -7,8 +7,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/supersplit/keyboard.json b/keyboards/supersplit/keyboard.json index 3950d2bbce..fb4babd0dd 100644 --- a/keyboards/supersplit/keyboard.json +++ b/keyboards/supersplit/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/superuser/ext/keyboard.json b/keyboards/superuser/ext/keyboard.json index c08213a13f..d3252e47e2 100644 --- a/keyboards/superuser/ext/keyboard.json +++ b/keyboards/superuser/ext/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ext", "manufacturer": "superuser", - "url": "", "maintainer": "kaylanm", "usb": { "vid": "0x5355", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/superuser/frl/keyboard.json b/keyboards/superuser/frl/keyboard.json index 4ede02d20d..8e5775a7d1 100644 --- a/keyboards/superuser/frl/keyboard.json +++ b/keyboards/superuser/frl/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "frl", "manufacturer": "superuser", - "url": "", "maintainer": "superuser", "usb": { "vid": "0x5355", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/superuser/tkl/keyboard.json b/keyboards/superuser/tkl/keyboard.json index 79df5bac09..a8828b115c 100644 --- a/keyboards/superuser/tkl/keyboard.json +++ b/keyboards/superuser/tkl/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "tkl", "manufacturer": "superuser", - "url": "", "maintainer": "kaylanm", "usb": { "vid": "0x5355", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/swiftrax/retropad/keyboard.json b/keyboards/swiftrax/retropad/keyboard.json index c8dd0e3327..92032ad6e3 100644 --- a/keyboards/swiftrax/retropad/keyboard.json +++ b/keyboards/swiftrax/retropad/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/swiss/keyboard.json b/keyboards/swiss/keyboard.json index 039153cd7f..bc592ba02e 100644 --- a/keyboards/swiss/keyboard.json +++ b/keyboards/swiss/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["D6", "D4", "D5", "B2", "D7"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0420", diff --git a/keyboards/switchplate/southpaw_fullsize/keyboard.json b/keyboards/switchplate/southpaw_fullsize/keyboard.json index 84942ccfa4..96724e5870 100644 --- a/keyboards/switchplate/southpaw_fullsize/keyboard.json +++ b/keyboards/switchplate/southpaw_fullsize/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Southpaw Fullsize", "manufacturer": "Switchplate Peripherals", - "url": "", "maintainer": "ai03", "usb": { "vid": "0xA103", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/switchplate/switchplate910/keyboard.json b/keyboards/switchplate/switchplate910/keyboard.json index 47353fe81e..6a9715b92d 100644 --- a/keyboards/switchplate/switchplate910/keyboard.json +++ b/keyboards/switchplate/switchplate910/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "910", "manufacturer": "Switchplate Peripherals", - "url": "", "maintainer": "MxBluE", "usb": { "vid": "0x54F3", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/sx60/keyboard.json b/keyboards/sx60/keyboard.json index ba5b439cec..9d3663fecf 100644 --- a/keyboards/sx60/keyboard.json +++ b/keyboards/sx60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "SX60", "manufacturer": "Quantrik", - "url": "", "maintainer": "https://github.com/amnobis", "usb": { "vid": "0x5154", diff --git a/keyboards/synthandkeys/bento_box/keyboard.json b/keyboards/synthandkeys/bento_box/keyboard.json index 3cdc7a5870..ad662f1669 100644 --- a/keyboards/synthandkeys/bento_box/keyboard.json +++ b/keyboards/synthandkeys/bento_box/keyboard.json @@ -16,8 +16,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, @@ -31,7 +29,6 @@ ] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0000", diff --git a/keyboards/synthandkeys/the_debit_card/keyboard.json b/keyboards/synthandkeys/the_debit_card/keyboard.json index a2d0a6964f..1de96089bc 100644 --- a/keyboards/synthandkeys/the_debit_card/keyboard.json +++ b/keyboards/synthandkeys/the_debit_card/keyboard.json @@ -5,8 +5,6 @@ "bootloader": "rp2040", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -19,7 +17,6 @@ ] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0000", diff --git a/keyboards/synthlabs/060/keyboard.json b/keyboards/synthlabs/060/keyboard.json index 1094d430e6..e251201a51 100644 --- a/keyboards/synthlabs/060/keyboard.json +++ b/keyboards/synthlabs/060/keyboard.json @@ -8,8 +8,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/synthlabs/065/keyboard.json b/keyboards/synthlabs/065/keyboard.json index d8d0d96c3f..ea862c6f01 100644 --- a/keyboards/synthlabs/065/keyboard.json +++ b/keyboards/synthlabs/065/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/synthlabs/solo/keyboard.json b/keyboards/synthlabs/solo/keyboard.json index 1aedf98185..6640202474 100644 --- a/keyboards/synthlabs/solo/keyboard.json +++ b/keyboards/synthlabs/solo/keyboard.json @@ -7,8 +7,6 @@ "processor": "atmega32u4", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/system76/launch_1/keyboard.json b/keyboards/system76/launch_1/keyboard.json index 929b8c9794..b5317dd9bc 100644 --- a/keyboards/system76/launch_1/keyboard.json +++ b/keyboards/system76/launch_1/keyboard.json @@ -44,9 +44,7 @@ }, "default": { "animation": "rainbow_moving_chevron", - "hue": 142, - "sat": 255, - "speed": 127 + "hue": 142 }, "driver": "ws2812", "max_brightness": 176, diff --git a/keyboards/system76/launch_1/launch_1.c b/keyboards/system76/launch_1/launch_1.c index c9af479bf5..c01fb7b01d 100644 --- a/keyboards/system76/launch_1/launch_1.c +++ b/keyboards/system76/launch_1/launch_1.c @@ -16,6 +16,7 @@ */ #include "quantum.h" +#include "eeprom.h" #include "usb_mux.h" @@ -73,7 +74,7 @@ led_config_t g_led_config = { { } }; #endif // RGB_MATRIX_ENABLE -bool eeprom_is_valid(void) { +bool eeprom_is_valid(void) { return ( eeprom_read_word(((void *)EEPROM_MAGIC_ADDR)) == EEPROM_MAGIC && eeprom_read_byte(((void *)EEPROM_VERSION_ADDR)) == EEPROM_VERSION diff --git a/keyboards/tacworks/tac_k1/keyboard.json b/keyboards/tacworks/tac_k1/keyboard.json index cf098291be..f1875ec180 100644 --- a/keyboards/tacworks/tac_k1/keyboard.json +++ b/keyboards/tacworks/tac_k1/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/tada68/keyboard.json b/keyboards/tada68/keyboard.json index 641def01a3..1daf936b53 100644 --- a/keyboards/tada68/keyboard.json +++ b/keyboards/tada68/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "TADA68", "manufacturer": "TADA", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5441", diff --git a/keyboards/takashicompany/baumkuchen/keyboard.json b/keyboards/takashicompany/baumkuchen/keyboard.json index 2c8b77851b..d5aa1f81e1 100644 --- a/keyboards/takashicompany/baumkuchen/keyboard.json +++ b/keyboards/takashicompany/baumkuchen/keyboard.json @@ -14,8 +14,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, @@ -45,7 +43,6 @@ "ws2812": { "pin": "D3" }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0045", diff --git a/keyboards/takashicompany/center_enter/keyboard.json b/keyboards/takashicompany/center_enter/keyboard.json index b8188bd718..992ca29efd 100644 --- a/keyboards/takashicompany/center_enter/keyboard.json +++ b/keyboards/takashicompany/center_enter/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Center x Enter", "manufacturer": "takashicompany", - "url": "", "maintainer": "takashicompany", "usb": { "vid": "0x7463", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/takashicompany/ejectix/keyboard.json b/keyboards/takashicompany/ejectix/keyboard.json index 560c253326..3f29e5c86d 100644 --- a/keyboards/takashicompany/ejectix/keyboard.json +++ b/keyboards/takashicompany/ejectix/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -36,7 +34,6 @@ "led_count": 11, "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0049", diff --git a/keyboards/takashicompany/endzone34/keyboard.json b/keyboards/takashicompany/endzone34/keyboard.json index 3549d2c089..c0b696e845 100644 --- a/keyboards/takashicompany/endzone34/keyboard.json +++ b/keyboards/takashicompany/endzone34/keyboard.json @@ -31,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/takashicompany/ergomirage/keyboard.json b/keyboards/takashicompany/ergomirage/keyboard.json index 1e34505b01..4a2e3ab5ec 100644 --- a/keyboards/takashicompany/ergomirage/keyboard.json +++ b/keyboards/takashicompany/ergomirage/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -16,7 +14,6 @@ "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"] }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0044", diff --git a/keyboards/takashicompany/goat51/keyboard.json b/keyboards/takashicompany/goat51/keyboard.json index c424685713..f91c5bda49 100644 --- a/keyboards/takashicompany/goat51/keyboard.json +++ b/keyboards/takashicompany/goat51/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -32,8 +30,6 @@ "rgblight": { "led_count": 11, "hue_steps": 10, - "saturation_steps": 17, - "brightness_steps": 17, "animations": { "alternating": true, "breathing": true, diff --git a/keyboards/takashicompany/jourkey/keyboard.json b/keyboards/takashicompany/jourkey/keyboard.json index 01847cfa53..e99eb87c47 100644 --- a/keyboards/takashicompany/jourkey/keyboard.json +++ b/keyboards/takashicompany/jourkey/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, @@ -23,7 +21,6 @@ ["D4", "C6", "D7", "E6", "B4", "F5", "F6", "F7", "B5", "B1", "B3", "B2", "B6"] ] }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0062", diff --git a/keyboards/takashicompany/klec_01/keyboard.json b/keyboards/takashicompany/klec_01/keyboard.json index 36baa8bf60..88eda74f12 100644 --- a/keyboards/takashicompany/klec_01/keyboard.json +++ b/keyboards/takashicompany/klec_01/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -16,7 +14,6 @@ "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"], "rows": ["D4", "C6", "D7", "E6", "B4", "B5"] }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x1001", diff --git a/keyboards/takashicompany/klec_02/keyboard.json b/keyboards/takashicompany/klec_02/keyboard.json index 045c4ef315..b659d18bc0 100644 --- a/keyboards/takashicompany/klec_02/keyboard.json +++ b/keyboards/takashicompany/klec_02/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -22,7 +20,6 @@ "pin": "D2" } }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x1002", diff --git a/keyboards/takashicompany/minidivide/keyboard.json b/keyboards/takashicompany/minidivide/keyboard.json index d258baa694..a2dea1ee65 100644 --- a/keyboards/takashicompany/minidivide/keyboard.json +++ b/keyboards/takashicompany/minidivide/keyboard.json @@ -9,8 +9,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -50,7 +48,6 @@ "pin": "D2" } }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x0037", diff --git a/keyboards/takashicompany/minidivide_max/keyboard.json b/keyboards/takashicompany/minidivide_max/keyboard.json index 54f9dbaf78..9cfd33373c 100644 --- a/keyboards/takashicompany/minidivide_max/keyboard.json +++ b/keyboards/takashicompany/minidivide_max/keyboard.json @@ -9,8 +9,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -49,7 +47,6 @@ "pin": "D2" } }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x0054", diff --git a/keyboards/takashicompany/palmslave/keyboard.json b/keyboards/takashicompany/palmslave/keyboard.json index 03d3f3e849..a9825767ea 100644 --- a/keyboards/takashicompany/palmslave/keyboard.json +++ b/keyboards/takashicompany/palmslave/keyboard.json @@ -9,8 +9,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -31,7 +29,6 @@ "pin": "D2" } }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x0063", diff --git a/keyboards/takashicompany/qoolee/keyboard.json b/keyboards/takashicompany/qoolee/keyboard.json index bce2335293..26389b03a3 100644 --- a/keyboards/takashicompany/qoolee/keyboard.json +++ b/keyboards/takashicompany/qoolee/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/takashicompany/radialex/keyboard.json b/keyboards/takashicompany/radialex/keyboard.json index 34ef3d2f1f..3b71cc6a5b 100644 --- a/keyboards/takashicompany/radialex/keyboard.json +++ b/keyboards/takashicompany/radialex/keyboard.json @@ -31,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/takashicompany/rookey/keyboard.json b/keyboards/takashicompany/rookey/keyboard.json index 9473345409..5e530a5a3c 100644 --- a/keyboards/takashicompany/rookey/keyboard.json +++ b/keyboards/takashicompany/rookey/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/takashicompany/spreadwriter/keyboard.json b/keyboards/takashicompany/spreadwriter/keyboard.json index 2c9fcd1619..59c78c4532 100644 --- a/keyboards/takashicompany/spreadwriter/keyboard.json +++ b/keyboards/takashicompany/spreadwriter/keyboard.json @@ -31,8 +31,6 @@ "rgblight": { "led_count": 53, "hue_steps": 10, - "saturation_steps": 17, - "brightness_steps": 17, "animations": { "alternating": true, "breathing": true, diff --git a/keyboards/takashicompany/tightwriter/keyboard.json b/keyboards/takashicompany/tightwriter/keyboard.json index 201e3f6ed5..6fb86b874b 100644 --- a/keyboards/takashicompany/tightwriter/keyboard.json +++ b/keyboards/takashicompany/tightwriter/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -17,7 +15,6 @@ "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], "rows": ["F6", "F7", "B1", "B3", "B2", "B6"] }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0025", diff --git a/keyboards/takashiski/otaku_split/rev0/keyboard.json b/keyboards/takashiski/otaku_split/rev0/keyboard.json index 193254aa1a..911d883eb3 100644 --- a/keyboards/takashiski/otaku_split/rev0/keyboard.json +++ b/keyboards/takashiski/otaku_split/rev0/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "otaku split rev.0", "manufacturer": "takashiski", - "url": "", "maintainer": "takashiski", "usb": { "vid": "0xFEED", diff --git a/keyboards/taleguers/taleguers75/keyboard.json b/keyboards/taleguers/taleguers75/keyboard.json index 8c3a1565e2..0af1b2634b 100644 --- a/keyboards/taleguers/taleguers75/keyboard.json +++ b/keyboards/taleguers/taleguers75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Taleguers75", "manufacturer": "Taleguers", - "url": "", "maintainer": "borlopjim", "usb": { "vid": "0x8476", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/tanuki/keyboard.json b/keyboards/tanuki/keyboard.json index 0c4045e320..90c5cd7cf7 100644 --- a/keyboards/tanuki/keyboard.json +++ b/keyboards/tanuki/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Tanuki", "manufacturer": "Seth", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/tau4/keyboard.json b/keyboards/tau4/keyboard.json index f5acdbddd3..9a8e280905 100644 --- a/keyboards/tau4/keyboard.json +++ b/keyboards/tau4/keyboard.json @@ -47,7 +47,6 @@ "twinkle": true }, "brightness_steps": 8, - "hue_steps": 8, "layers": { "blink": false, "enabled": true, diff --git a/keyboards/teahouse/ayleen/keyboard.json b/keyboards/teahouse/ayleen/keyboard.json index 4b64ba96d1..adb1695086 100644 --- a/keyboards/teahouse/ayleen/keyboard.json +++ b/keyboards/teahouse/ayleen/keyboard.json @@ -9,8 +9,6 @@ "features": { "rgblight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/team0110/p1800fl/keyboard.json b/keyboards/team0110/p1800fl/keyboard.json index 681482db5b..2e99ddeb87 100644 --- a/keyboards/team0110/p1800fl/keyboard.json +++ b/keyboards/team0110/p1800fl/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/technika/keyboard.json b/keyboards/technika/keyboard.json index a6f3c2bd01..fc894fefb5 100644 --- a/keyboards/technika/keyboard.json +++ b/keyboards/technika/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Technika", "manufacturer": "TealTechnik", - "url": "", "maintainer": "Gondolindrim", "usb": { "vid": "0x8484", diff --git a/keyboards/teleport/native/board.h b/keyboards/teleport/native/board.h new file mode 100644 index 0000000000..41efeb2c1a --- /dev/null +++ b/keyboards/teleport/native/board.h @@ -0,0 +1,8 @@ +// Copyright 2022 Moritz Plattner +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/teleport/native/config.h b/keyboards/teleport/native/config.h index 31d0025883..cd823d725e 100644 --- a/keyboards/teleport/native/config.h +++ b/keyboards/teleport/native/config.h @@ -67,6 +67,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #ifdef ENABLE_RGB_MATRIX_TYPING_HEATMAP #define RGB_MATRIX_TYPING_HEATMAP_SLIM #endif - -/* Set HSE clock since it differs from F411 default */ -#define STM32_HSECLK 16000000 diff --git a/keyboards/teleport/native/info.json b/keyboards/teleport/native/info.json index 756764ff6f..08432fbf14 100644 --- a/keyboards/teleport/native/info.json +++ b/keyboards/teleport/native/info.json @@ -34,8 +34,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/teleport/numpad/keyboard.json b/keyboards/teleport/numpad/keyboard.json index ace8e949e0..00862e4f9f 100644 --- a/keyboards/teleport/numpad/keyboard.json +++ b/keyboards/teleport/numpad/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/teleport/tkl/keyboard.json b/keyboards/teleport/tkl/keyboard.json index 9fb88acb74..b6b93667f4 100644 --- a/keyboards/teleport/tkl/keyboard.json +++ b/keyboards/teleport/tkl/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/telophase/keyboard.json b/keyboards/telophase/keyboard.json index 8efbae5519..d3a86ebcbf 100644 --- a/keyboards/telophase/keyboard.json +++ b/keyboards/telophase/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Telophase", "manufacturer": "Unknown", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/tempo_turtle/bradpad/keyboard.json b/keyboards/tempo_turtle/bradpad/keyboard.json index 374dbeaaaf..eafadc10e0 100644 --- a/keyboards/tempo_turtle/bradpad/keyboard.json +++ b/keyboards/tempo_turtle/bradpad/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/tender/macrowo_pad/keyboard.json b/keyboards/tender/macrowo_pad/keyboard.json index 53e22289f6..2380daf8b1 100644 --- a/keyboards/tender/macrowo_pad/keyboard.json +++ b/keyboards/tender/macrowo_pad/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/tenki/keyboard.json b/keyboards/tenki/keyboard.json index 628e2068ba..913017866b 100644 --- a/keyboards/tenki/keyboard.json +++ b/keyboards/tenki/keyboard.json @@ -32,8 +32,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/terrazzo/keyboard.json b/keyboards/terrazzo/keyboard.json index fb8bc6b483..71aa43f7e9 100644 --- a/keyboards/terrazzo/keyboard.json +++ b/keyboards/terrazzo/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Terrazzo", "manufacturer": "MsMustard", - "url": "", "maintainer": "MsMustard", "usb": { "vid": "0x4D4D", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "led_matrix": true, diff --git a/keyboards/tetris/keyboard.json b/keyboards/tetris/keyboard.json index 57cfd42c70..3500a9ffac 100644 --- a/keyboards/tetris/keyboard.json +++ b/keyboards/tetris/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Tetris", "manufacturer": "Fengz", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -35,8 +34,6 @@ "features": { "audio": true, "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/tg4x/keyboard.json b/keyboards/tg4x/keyboard.json index ae4cd53a28..a2e4a84ff5 100644 --- a/keyboards/tg4x/keyboard.json +++ b/keyboards/tg4x/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "TG4x", "manufacturer": "MythosMann", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x4D4D", @@ -34,8 +33,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/tg67/keyboard.json b/keyboards/tg67/keyboard.json index 8c860e5996..308f16cc99 100644 --- a/keyboards/tg67/keyboard.json +++ b/keyboards/tg67/keyboard.json @@ -33,7 +33,6 @@ "led_count": 69, "saturation_steps": 8 }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x6667", diff --git a/keyboards/tgr/910/keyboard.json b/keyboards/tgr/910/keyboard.json index 072eb07ea1..dad6cb8bd0 100644 --- a/keyboards/tgr/910/keyboard.json +++ b/keyboards/tgr/910/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "TGR-910", "manufacturer": "Quadcube", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5447", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/tgr/910ce/keyboard.json b/keyboards/tgr/910ce/keyboard.json index 4d70a5b5db..39dc5c3746 100644 --- a/keyboards/tgr/910ce/keyboard.json +++ b/keyboards/tgr/910ce/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "910CE", "manufacturer": "TGR", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5447", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/tgr/alice/keyboard.json b/keyboards/tgr/alice/keyboard.json index d78185106b..c477d52e04 100644 --- a/keyboards/tgr/alice/keyboard.json +++ b/keyboards/tgr/alice/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Alice", "manufacturer": "TGR", - "url": "", "maintainer": "Felipe Coury", "usb": { "vid": "0x20A0", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/tgr/jane/v2/keyboard.json b/keyboards/tgr/jane/v2/keyboard.json index dc36757eb5..3028064cd1 100644 --- a/keyboards/tgr/jane/v2/keyboard.json +++ b/keyboards/tgr/jane/v2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Jane v2", "manufacturer": "TGR", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5447", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/tgr/jane/v2ce/keyboard.json b/keyboards/tgr/jane/v2ce/keyboard.json index 107e2dee9e..66dcb9fd25 100644 --- a/keyboards/tgr/jane/v2ce/keyboard.json +++ b/keyboards/tgr/jane/v2ce/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Jane v2 CE", "manufacturer": "TGR", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5447", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/tgr/tris/keyboard.json b/keyboards/tgr/tris/keyboard.json index 7776c7b2c9..13f2eef8a1 100644 --- a/keyboards/tgr/tris/keyboard.json +++ b/keyboards/tgr/tris/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Tris", "manufacturer": "TGR", - "url": "", "maintainer": "halfenergized", "usb": { "vid": "0x5447", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/the_royal/liminal/keyboard.json b/keyboards/the_royal/liminal/keyboard.json index 0a5bd361e7..e23c468702 100644 --- a/keyboards/the_royal/liminal/keyboard.json +++ b/keyboards/the_royal/liminal/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Liminal", "manufacturer": "TheRoyalSweatshirt", - "url": "", "maintainer": "TheRoyalSweatshirt", "usb": { "vid": "0x4B4B", @@ -19,8 +18,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/the_royal/schwann/keyboard.json b/keyboards/the_royal/schwann/keyboard.json index 800d45b83a..d1db1f3e41 100644 --- a/keyboards/the_royal/schwann/keyboard.json +++ b/keyboards/the_royal/schwann/keyboard.json @@ -31,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/themadnoodle/ncc1701kb/v2/keyboard.json b/keyboards/themadnoodle/ncc1701kb/v2/keyboard.json index c67262c562..069a4b79fa 100644 --- a/keyboards/themadnoodle/ncc1701kb/v2/keyboard.json +++ b/keyboards/themadnoodle/ncc1701kb/v2/keyboard.json @@ -7,8 +7,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/themadnoodle/noodlepad/info.json b/keyboards/themadnoodle/noodlepad/info.json index 8ad698df38..48f984339c 100644 --- a/keyboards/themadnoodle/noodlepad/info.json +++ b/keyboards/themadnoodle/noodlepad/info.json @@ -8,8 +8,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/themadnoodle/noodlepad_micro/keyboard.json b/keyboards/themadnoodle/noodlepad_micro/keyboard.json index fe7ab9ea75..868cce3177 100644 --- a/keyboards/themadnoodle/noodlepad_micro/keyboard.json +++ b/keyboards/themadnoodle/noodlepad_micro/keyboard.json @@ -7,8 +7,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/themadnoodle/udon13/keyboard.json b/keyboards/themadnoodle/udon13/keyboard.json index b0ece11612..31ad17a367 100644 --- a/keyboards/themadnoodle/udon13/keyboard.json +++ b/keyboards/themadnoodle/udon13/keyboard.json @@ -7,8 +7,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "encoder": true, "mousekey": true, diff --git a/keyboards/theone/keyboard.json b/keyboards/theone/keyboard.json index 3b4fc99d05..be141628f0 100644 --- a/keyboards/theone/keyboard.json +++ b/keyboards/theone/keyboard.json @@ -8,8 +8,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "key_lock": true, "mousekey": true, diff --git a/keyboards/thepanduuh/degenpad/keyboard.json b/keyboards/thepanduuh/degenpad/keyboard.json index 7a0edc2124..d74fd0dd2c 100644 --- a/keyboards/thepanduuh/degenpad/keyboard.json +++ b/keyboards/thepanduuh/degenpad/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/thevankeyboards/bananasplit/keyboard.json b/keyboards/thevankeyboards/bananasplit/keyboard.json index 1fb7fc5054..b8845f165c 100644 --- a/keyboards/thevankeyboards/bananasplit/keyboard.json +++ b/keyboards/thevankeyboards/bananasplit/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BananaSplit 60", "manufacturer": "TheVan Keyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEAE", diff --git a/keyboards/thevankeyboards/caravan/keyboard.json b/keyboards/thevankeyboards/caravan/keyboard.json index a5c00abf4e..578a2b3021 100644 --- a/keyboards/thevankeyboards/caravan/keyboard.json +++ b/keyboards/thevankeyboards/caravan/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Caravan", "manufacturer": "TheVan Keyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEAE", @@ -10,7 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/thevankeyboards/jetvan/keyboard.json b/keyboards/thevankeyboards/jetvan/keyboard.json index a5a9b96ac8..4d73b04537 100644 --- a/keyboards/thevankeyboards/jetvan/keyboard.json +++ b/keyboards/thevankeyboards/jetvan/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "JetVan", "manufacturer": "evangs", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEAE", @@ -29,7 +28,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/thevankeyboards/minivan/keyboard.json b/keyboards/thevankeyboards/minivan/keyboard.json index 53b3e0d89c..547762a7f4 100644 --- a/keyboards/thevankeyboards/minivan/keyboard.json +++ b/keyboards/thevankeyboards/minivan/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Minivan", "manufacturer": "Evan Sailer", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEAE", @@ -18,7 +17,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/thevankeyboards/roadkit/keyboard.json b/keyboards/thevankeyboards/roadkit/keyboard.json index e3c282bffe..b6933d677d 100644 --- a/keyboards/thevankeyboards/roadkit/keyboard.json +++ b/keyboards/thevankeyboards/roadkit/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Roadkit Micro", "manufacturer": "TheVan Keyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEAE", @@ -11,7 +10,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/tkc/california/keyboard.json b/keyboards/tkc/california/keyboard.json index 465544bc03..7a7edecfef 100644 --- a/keyboards/tkc/california/keyboard.json +++ b/keyboards/tkc/california/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "California", "manufacturer": "TKC", - "url": "", "maintainer": "TerryMathews", "usb": { "vid": "0x544B", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/tkc/candybar/lefty/keyboard.json b/keyboards/tkc/candybar/lefty/keyboard.json index fe8814e54b..333a4a30e9 100644 --- a/keyboards/tkc/candybar/lefty/keyboard.json +++ b/keyboards/tkc/candybar/lefty/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Candybar", "manufacturer": "The Key Company", - "url": "", "maintainer": "terrymathews", "usb": { "vid": "0x544B", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/tkc/candybar/lefty_r3/keyboard.json b/keyboards/tkc/candybar/lefty_r3/keyboard.json index b09412ffc9..4e695a2156 100644 --- a/keyboards/tkc/candybar/lefty_r3/keyboard.json +++ b/keyboards/tkc/candybar/lefty_r3/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Candybar", "manufacturer": "The Key Company", - "url": "", "maintainer": "terrymathews", "usb": { "vid": "0x544B", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/tkc/candybar/righty/keyboard.json b/keyboards/tkc/candybar/righty/keyboard.json index f529ac936f..19f50d9df7 100644 --- a/keyboards/tkc/candybar/righty/keyboard.json +++ b/keyboards/tkc/candybar/righty/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Candybar", "manufacturer": "The Key Company", - "url": "", "maintainer": "terrymathews", "usb": { "vid": "0x544B", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/tkc/candybar/righty_r3/keyboard.json b/keyboards/tkc/candybar/righty_r3/keyboard.json index 8064672583..80f90c30ac 100644 --- a/keyboards/tkc/candybar/righty_r3/keyboard.json +++ b/keyboards/tkc/candybar/righty_r3/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Candybar", "manufacturer": "The Key Company", - "url": "", "maintainer": "terrymathews", "usb": { "vid": "0x544B", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/tkc/godspeed75/keyboard.json b/keyboards/tkc/godspeed75/keyboard.json index 48cf06f3ca..3379975ee4 100644 --- a/keyboards/tkc/godspeed75/keyboard.json +++ b/keyboards/tkc/godspeed75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "GodSpeed75", "manufacturer": "The Key Company", - "url": "", "maintainer": "terrymathews", "usb": { "vid": "0x544B", @@ -28,8 +27,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/tkc/m0lly/keyboard.json b/keyboards/tkc/m0lly/keyboard.json index ae76f1e6d9..fda904c4f4 100644 --- a/keyboards/tkc/m0lly/keyboard.json +++ b/keyboards/tkc/m0lly/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "M0lly", "manufacturer": "The Key Company", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x544B", diff --git a/keyboards/tkc/osav2/keyboard.json b/keyboards/tkc/osav2/keyboard.json index ef4c789797..8e9c685b49 100644 --- a/keyboards/tkc/osav2/keyboard.json +++ b/keyboards/tkc/osav2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "OSA v2", "manufacturer": "The Key Company", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x544B", diff --git a/keyboards/tkc/portico/keyboard.json b/keyboards/tkc/portico/keyboard.json index 29b7d8246b..49efe0a942 100644 --- a/keyboards/tkc/portico/keyboard.json +++ b/keyboards/tkc/portico/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Portico", "manufacturer": "TKC", - "url": "", "maintainer": "TerryMathews", "usb": { "vid": "0x544B", diff --git a/keyboards/tkc/portico68v2/keyboard.json b/keyboards/tkc/portico68v2/keyboard.json index 914dee8760..087713f3a2 100644 --- a/keyboards/tkc/portico68v2/keyboard.json +++ b/keyboards/tkc/portico68v2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Portico68 v2", "manufacturer": "TKC", - "url": "", "maintainer": "TerryMathews", "usb": { "vid": "0x544B", @@ -63,7 +62,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/tkc/portico75/keyboard.json b/keyboards/tkc/portico75/keyboard.json index 4228f20145..1e84f25ebe 100644 --- a/keyboards/tkc/portico75/keyboard.json +++ b/keyboards/tkc/portico75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Portico75", "manufacturer": "TKC", - "url": "", "maintainer": "TerryMathews", "usb": { "vid": "0x544B", diff --git a/keyboards/tkc/tkc1800/keyboard.json b/keyboards/tkc/tkc1800/keyboard.json index 2965c61d83..ffd88d8b43 100644 --- a/keyboards/tkc/tkc1800/keyboard.json +++ b/keyboards/tkc/tkc1800/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "TKC1800", "manufacturer": "The Key Company", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x544B", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/tkc/tkl_ab87/keyboard.json b/keyboards/tkc/tkl_ab87/keyboard.json index c3d14bd8cf..a7bbbc3664 100644 --- a/keyboards/tkc/tkl_ab87/keyboard.json +++ b/keyboards/tkc/tkl_ab87/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "TKL A/B87", "manufacturer": "TKC", - "url": "", "maintainer": "TerryMathews", "usb": { "vid": "0x544B", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/tmo50/keyboard.json b/keyboards/tmo50/keyboard.json index dbb79802ca..f8f48f6895 100644 --- a/keyboards/tmo50/keyboard.json +++ b/keyboards/tmo50/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "TMO50", "manufacturer": "funderburker", - "url": "", "maintainer": "funderburker", "usb": { "vid": "0xFBFB", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/toad/keyboard.json b/keyboards/toad/keyboard.json index 073fa6411c..6db4e402e1 100644 --- a/keyboards/toad/keyboard.json +++ b/keyboards/toad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Toad", "manufacturer": "farmakon", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/toffee_studio/blueberry/keyboard.json b/keyboards/toffee_studio/blueberry/keyboard.json index 99a87b0a95..e5fa35a228 100644 --- a/keyboards/toffee_studio/blueberry/keyboard.json +++ b/keyboards/toffee_studio/blueberry/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Blueberry", "manufacturer": "Toffee Studio", - "url": "", "maintainer": "Toffee Studio", "usb": { "vid": "0x1067", @@ -31,8 +30,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/tokyokeyboard/alix40/config.h b/keyboards/tokyokeyboard/alix40/config.h deleted file mode 100644 index 51d446c6d2..0000000000 --- a/keyboards/tokyokeyboard/alix40/config.h +++ /dev/null @@ -1,18 +0,0 @@ -/* -Copyright 2021 quadcube <[email protected]> -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/>. -*/ - -#pragma once - -/* Bluetooth */ -#define BATTERY_LEVEL_PIN B6 diff --git a/keyboards/tokyokeyboard/tokyo60/keyboard.json b/keyboards/tokyokeyboard/tokyo60/keyboard.json index b590946a3a..90734f16af 100644 --- a/keyboards/tokyokeyboard/tokyo60/keyboard.json +++ b/keyboards/tokyokeyboard/tokyo60/keyboard.json @@ -13,7 +13,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/tominabox1/adalyn/keyboard.json b/keyboards/tominabox1/adalyn/keyboard.json index 113ef690ed..0986067227 100644 --- a/keyboards/tominabox1/adalyn/keyboard.json +++ b/keyboards/tominabox1/adalyn/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/tominabox1/bigboy/keyboard.json b/keyboards/tominabox1/bigboy/keyboard.json index a25189f35e..6ecd61da3b 100644 --- a/keyboards/tominabox1/bigboy/keyboard.json +++ b/keyboards/tominabox1/bigboy/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BigBoy", "manufacturer": "tominabox1", - "url": "", "maintainer": "tominabox1", "usb": { "vid": "0x7431", @@ -36,8 +35,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/tominabox1/le_chiffre/info.json b/keyboards/tominabox1/le_chiffre/info.json index cb4097d61d..c521928adf 100644 --- a/keyboards/tominabox1/le_chiffre/info.json +++ b/keyboards/tominabox1/le_chiffre/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Le Chiffre", "manufacturer": "tominabox1", - "url": "", "maintainer": "tominabox1", "features": { "bootmagic": true, diff --git a/keyboards/tominabox1/littlefoot_lx/rev1/keyboard.json b/keyboards/tominabox1/littlefoot_lx/rev1/keyboard.json index b021ba9c8d..9ccfb5f27b 100644 --- a/keyboards/tominabox1/littlefoot_lx/rev1/keyboard.json +++ b/keyboards/tominabox1/littlefoot_lx/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Littlefoot LX", "manufacturer": "tominabox1", - "url": "", "maintainer": "tominabox1", "usb": { "vid": "0x7431", diff --git a/keyboards/tominabox1/littlefoot_lx/rev2/keyboard.json b/keyboards/tominabox1/littlefoot_lx/rev2/keyboard.json index fe1cf6e596..38d1d62345 100644 --- a/keyboards/tominabox1/littlefoot_lx/rev2/keyboard.json +++ b/keyboards/tominabox1/littlefoot_lx/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Littlefoot LX", "manufacturer": "tominabox1", - "url": "", "maintainer": "tominabox1", "usb": { "vid": "0x7431", diff --git a/keyboards/tominabox1/qaz/keyboard.json b/keyboards/tominabox1/qaz/keyboard.json index 9e18f0ddf4..4595b5f42f 100644 --- a/keyboards/tominabox1/qaz/keyboard.json +++ b/keyboards/tominabox1/qaz/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "qaz", "manufacturer": "whydobearsexplod", - "url": "", "maintainer": "tominabox1", "usb": { "vid": "0x7431", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/tominabox1/underscore33/rev1/keyboard.json b/keyboards/tominabox1/underscore33/rev1/keyboard.json index 221ecccb04..d13e20a7c6 100644 --- a/keyboards/tominabox1/underscore33/rev1/keyboard.json +++ b/keyboards/tominabox1/underscore33/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "underscore33", "manufacturer": "tominabox1", - "url": "", "maintainer": "tominabox1", "usb": { "vid": "0x7431", diff --git a/keyboards/tominabox1/underscore33/rev2/keyboard.json b/keyboards/tominabox1/underscore33/rev2/keyboard.json index 4375116963..d4b922e240 100644 --- a/keyboards/tominabox1/underscore33/rev2/keyboard.json +++ b/keyboards/tominabox1/underscore33/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "underscore33", "manufacturer": "tominabox1", - "url": "", "maintainer": "tominabox1", "usb": { "vid": "0x7431", diff --git a/keyboards/touchpad/keyboard.json b/keyboards/touchpad/keyboard.json index 5429b5844d..0d2b450782 100644 --- a/keyboards/touchpad/keyboard.json +++ b/keyboards/touchpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "TouchPad", "manufacturer": "JacoBurge", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x16D0", diff --git a/keyboards/tr60w/keyboard.json b/keyboards/tr60w/keyboard.json index ef483ed2e2..4f188ae0a5 100644 --- a/keyboards/tr60w/keyboard.json +++ b/keyboards/tr60w/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "TR60W", "manufacturer": "Triangle Lab", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/trainpad/keyboard.json b/keyboards/trainpad/keyboard.json index e7e74b0e91..e03d2d59f8 100644 --- a/keyboards/trainpad/keyboard.json +++ b/keyboards/trainpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "TrainPad", "manufacturer": "Ananya Kirti", - "url": "", "maintainer": "AnanyaKirti", "usb": { "vid": "0x416B", @@ -12,8 +11,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": false }, "processor": "atmega32u2", diff --git a/keyboards/trashman/ketch/keyboard.json b/keyboards/trashman/ketch/keyboard.json index 8f0a638e63..227ae1fb9f 100644 --- a/keyboards/trashman/ketch/keyboard.json +++ b/keyboards/trashman/ketch/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/treasure/type9/keyboard.json b/keyboards/treasure/type9/keyboard.json index 0c1ee1987a..ab7599730f 100644 --- a/keyboards/treasure/type9/keyboard.json +++ b/keyboards/treasure/type9/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Type-9", "manufacturer": "Treasure", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/treasure/type9s2/keyboard.json b/keyboards/treasure/type9s2/keyboard.json index 94cc0dec95..66905bdf8e 100644 --- a/keyboards/treasure/type9s2/keyboard.json +++ b/keyboards/treasure/type9s2/keyboard.json @@ -14,8 +14,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/treasure/type9s3/keyboard.json b/keyboards/treasure/type9s3/keyboard.json index cb2bcf3a7a..380ad72683 100644 --- a/keyboards/treasure/type9s3/keyboard.json +++ b/keyboards/treasure/type9s3/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, @@ -21,7 +19,6 @@ ] }, "processor": "atmega32u2", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x5493", diff --git a/keyboards/trkeyboards/trk1/keyboard.json b/keyboards/trkeyboards/trk1/keyboard.json index c3190a5eee..83af00de3a 100644 --- a/keyboards/trkeyboards/trk1/keyboard.json +++ b/keyboards/trkeyboards/trk1/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/trnthsn/e8ghty/info.json b/keyboards/trnthsn/e8ghty/info.json index ec4e724878..d52419d760 100644 --- a/keyboards/trnthsn/e8ghty/info.json +++ b/keyboards/trnthsn/e8ghty/info.json @@ -5,8 +5,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -37,7 +35,6 @@ "indicators": { "caps_lock": "B4" }, - "url": "", "usb": { "vid": "0x5453", "pid": "0x3830", diff --git a/keyboards/trnthsn/e8ghtyneo/info.json b/keyboards/trnthsn/e8ghtyneo/info.json index fef6259d24..e81c5fbb22 100644 --- a/keyboards/trnthsn/e8ghtyneo/info.json +++ b/keyboards/trnthsn/e8ghtyneo/info.json @@ -5,8 +5,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -40,7 +38,6 @@ "indicators": { "caps_lock": "B3" }, - "url": "", "usb": { "vid": "0x5453", "pid": "0x3845", diff --git a/keyboards/trnthsn/s6xty/keyboard.json b/keyboards/trnthsn/s6xty/keyboard.json index 3ec2f87f3d..2397fa0788 100644 --- a/keyboards/trnthsn/s6xty/keyboard.json +++ b/keyboards/trnthsn/s6xty/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -35,7 +33,6 @@ "led_count": 22, "sleep": true }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x5336", diff --git a/keyboards/trnthsn/s6xty5neor2/info.json b/keyboards/trnthsn/s6xty5neor2/info.json index ba20dbc2ba..ea6544cbd3 100644 --- a/keyboards/trnthsn/s6xty5neor2/info.json +++ b/keyboards/trnthsn/s6xty5neor2/info.json @@ -5,8 +5,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -18,7 +16,6 @@ "indicators": { "caps_lock": "C13" }, - "url": "", "usb": { "vid": "0x5453", "pid": "0x4E45", diff --git a/keyboards/trojan_pinata/model_b/rev0/keyboard.json b/keyboards/trojan_pinata/model_b/rev0/keyboard.json index 82d712d6fc..fc1ba7f863 100644 --- a/keyboards/trojan_pinata/model_b/rev0/keyboard.json +++ b/keyboards/trojan_pinata/model_b/rev0/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/tunks/ergo33/keyboard.json b/keyboards/tunks/ergo33/keyboard.json index 2bace9cf00..b279af5c1a 100644 --- a/keyboards/tunks/ergo33/keyboard.json +++ b/keyboards/tunks/ergo33/keyboard.json @@ -27,8 +27,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/tweetydabird/lbs4/keyboard.json b/keyboards/tweetydabird/lbs4/keyboard.json index 3176520772..c7d1e7ab1b 100644 --- a/keyboards/tweetydabird/lbs4/keyboard.json +++ b/keyboards/tweetydabird/lbs4/keyboard.json @@ -7,8 +7,6 @@ "bootloader_instructions": "Short marked pads on PCB, or hold top left key when plugging in.", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, @@ -36,9 +34,6 @@ }, "rgblight": { "led_count": 6, - "hue_steps": 8, - "saturation_steps": 17, - "brightness_steps": 17, "max_brightness": 175, "animations": { "alternating": true, diff --git a/keyboards/tweetydabird/lbs6/keyboard.json b/keyboards/tweetydabird/lbs6/keyboard.json index 1714e9b6c4..105dcf9013 100644 --- a/keyboards/tweetydabird/lbs6/keyboard.json +++ b/keyboards/tweetydabird/lbs6/keyboard.json @@ -6,8 +6,6 @@ "development_board": "promicro", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, @@ -39,9 +37,6 @@ }, "rgblight": { "led_count": 8, - "hue_steps": 8, - "saturation_steps": 17, - "brightness_steps": 17, "max_brightness": 200, "animations": { "alternating": true, diff --git a/keyboards/tweetydabird/lotus58/info.json b/keyboards/tweetydabird/lotus58/info.json index 2c3f85cdd9..7becd3ae26 100644 --- a/keyboards/tweetydabird/lotus58/info.json +++ b/keyboards/tweetydabird/lotus58/info.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/ubest/vn/keyboard.json b/keyboards/ubest/vn/keyboard.json index c50ceebbba..74da6f1ad9 100644 --- a/keyboards/ubest/vn/keyboard.json +++ b/keyboards/ubest/vn/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "vn", "manufacturer": "ubest", - "url": "", "maintainer": "mfkiiyd", "usb": { "vid": "0x6D66", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/uk78/keyboard.json b/keyboards/uk78/keyboard.json index 673497ca9c..c30725f553 100644 --- a/keyboards/uk78/keyboard.json +++ b/keyboards/uk78/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "UK78", "manufacturer": "UK Keyboards", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x554B", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/umbra/solder/solder.c b/keyboards/umbra/solder/solder.c index ef7581deab..de0681b229 100644 --- a/keyboards/umbra/solder/solder.c +++ b/keyboards/umbra/solder/solder.c @@ -14,7 +14,15 @@ 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 "solder.h" +#include "quantum.h" + +#ifndef CAPS_LOCK_ENABLE +# define CAPS_LOCK_ENABLE true +#endif + +#ifndef CAPS_LOCK_COLOR +# define CAPS_LOCK_COLOR HSV_GREEN +#endif void keyboard_pre_init_kb(void) { rgblight_set_effect_range(0, 16); diff --git a/keyboards/umbra/solder/solder.h b/keyboards/umbra/solder/solder.h deleted file mode 100644 index 4a82a87a09..0000000000 --- a/keyboards/umbra/solder/solder.h +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2024 Joseph Williams IV "IV Works" <[email protected]> - -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/>. -*/ -#pragma once - -#include "quantum.h" - -#define CAPS_LOCK_ENABLE true -#define CAPS_LOCK_COLOR HSV_GREEN diff --git a/keyboards/ungodly/nines/keyboard.json b/keyboards/ungodly/nines/keyboard.json index 5e5418e14d..ee4c65f9bb 100644 --- a/keyboards/ungodly/nines/keyboard.json +++ b/keyboards/ungodly/nines/keyboard.json @@ -18,8 +18,6 @@ "bootloader": "caterina", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/board.h b/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/board.h new file mode 100644 index 0000000000..5b80eb2230 --- /dev/null +++ b/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/board.h @@ -0,0 +1,8 @@ +// Copyright 2020 Purdea Andrei +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/config.h b/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/config.h index 71e60e9cfe..c10d26b9b2 100644 --- a/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/config.h +++ b/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/config.h @@ -21,8 +21,6 @@ #define SERIAL_NUMBER DEF_SERIAL_NUMBER #endif -#define STM32_HSECLK 16000000 - #define SOLENOID_PIN B5 #define HAPTIC_ENABLE_PIN C13 #define SOLENOID_DEFAULT_DWELL 20 diff --git a/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/board.h b/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/board.h new file mode 100644 index 0000000000..5b80eb2230 --- /dev/null +++ b/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/board.h @@ -0,0 +1,8 @@ +// Copyright 2020 Purdea Andrei +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/config.h b/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/config.h index 71e60e9cfe..c10d26b9b2 100644 --- a/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/config.h +++ b/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/config.h @@ -21,8 +21,6 @@ #define SERIAL_NUMBER DEF_SERIAL_NUMBER #endif -#define STM32_HSECLK 16000000 - #define SOLENOID_PIN B5 #define HAPTIC_ENABLE_PIN C13 #define SOLENOID_DEFAULT_DWELL 20 diff --git a/keyboards/unicomp/pc122/overnumpad_1xb/board.h b/keyboards/unicomp/pc122/overnumpad_1xb/board.h new file mode 100644 index 0000000000..5b80eb2230 --- /dev/null +++ b/keyboards/unicomp/pc122/overnumpad_1xb/board.h @@ -0,0 +1,8 @@ +// Copyright 2020 Purdea Andrei +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/unicomp/pc122/overnumpad_1xb/config.h b/keyboards/unicomp/pc122/overnumpad_1xb/config.h index 71e60e9cfe..c10d26b9b2 100644 --- a/keyboards/unicomp/pc122/overnumpad_1xb/config.h +++ b/keyboards/unicomp/pc122/overnumpad_1xb/config.h @@ -21,8 +21,6 @@ #define SERIAL_NUMBER DEF_SERIAL_NUMBER #endif -#define STM32_HSECLK 16000000 - #define SOLENOID_PIN B5 #define HAPTIC_ENABLE_PIN C13 #define SOLENOID_DEFAULT_DWELL 20 diff --git a/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/board.h b/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/board.h new file mode 100644 index 0000000000..5b80eb2230 --- /dev/null +++ b/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/board.h @@ -0,0 +1,8 @@ +// Copyright 2020 Purdea Andrei +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/config.h b/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/config.h index 71e60e9cfe..c10d26b9b2 100644 --- a/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/config.h +++ b/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/config.h @@ -21,8 +21,6 @@ #define SERIAL_NUMBER DEF_SERIAL_NUMBER #endif -#define STM32_HSECLK 16000000 - #define SOLENOID_PIN B5 #define HAPTIC_ENABLE_PIN C13 #define SOLENOID_DEFAULT_DWELL 20 diff --git a/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/board.h b/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/board.h new file mode 100644 index 0000000000..5b80eb2230 --- /dev/null +++ b/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/board.h @@ -0,0 +1,8 @@ +// Copyright 2020 Purdea Andrei +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/config.h b/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/config.h index 71e60e9cfe..c10d26b9b2 100644 --- a/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/config.h +++ b/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/config.h @@ -21,8 +21,6 @@ #define SERIAL_NUMBER DEF_SERIAL_NUMBER #endif -#define STM32_HSECLK 16000000 - #define SOLENOID_PIN B5 #define HAPTIC_ENABLE_PIN C13 #define SOLENOID_DEFAULT_DWELL 20 diff --git a/keyboards/unikeyboard/diverge3/keyboard.json b/keyboards/unikeyboard/diverge3/keyboard.json index 767f44b198..53c5f55fcd 100644 --- a/keyboards/unikeyboard/diverge3/keyboard.json +++ b/keyboards/unikeyboard/diverge3/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Diverge3", "manufacturer": "UniKeyboard", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/unikeyboard/divergetm2/keyboard.json b/keyboards/unikeyboard/divergetm2/keyboard.json index 09d481149c..3dc19772fa 100644 --- a/keyboards/unikeyboard/divergetm2/keyboard.json +++ b/keyboards/unikeyboard/divergetm2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Diverge TM 2", "manufacturer": "UniKeyboard", - "url": "", "maintainer": "islandman93, xton", "usb": { "vid": "0xFEED", @@ -11,7 +10,6 @@ "features": { "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/unikeyboard/felix/keyboard.json b/keyboards/unikeyboard/felix/keyboard.json index b55138a15c..232c5f80f1 100644 --- a/keyboards/unikeyboard/felix/keyboard.json +++ b/keyboards/unikeyboard/felix/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Felix", "manufacturer": "UniKeyboard", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/unikorn/keyboard.json b/keyboards/unikorn/keyboard.json index 1a3c46d691..7ba06098f3 100644 --- a/keyboards/unikorn/keyboard.json +++ b/keyboards/unikorn/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Unikorn60", "manufacturer": "Singa x TGR", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5354", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/uranuma/keyboard.json b/keyboards/uranuma/keyboard.json index b24ce74d9f..670823bda9 100644 --- a/keyboards/uranuma/keyboard.json +++ b/keyboards/uranuma/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "UraNuma", "manufacturer": "yohewi", - "url": "", "maintainer": "yohewi", "usb": { "vid": "0xFEED", diff --git a/keyboards/utd80/keyboard.json b/keyboards/utd80/keyboard.json index 41bd35c66a..5ae20b4c02 100644 --- a/keyboards/utd80/keyboard.json +++ b/keyboards/utd80/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "UTD80", "manufacturer": "UTD", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/v4n4g0rth0n/v1/keyboard.json b/keyboards/v4n4g0rth0n/v1/keyboard.json index 7dec889208..add06ed5db 100644 --- a/keyboards/v4n4g0rth0n/v1/keyboard.json +++ b/keyboards/v4n4g0rth0n/v1/keyboard.json @@ -4,7 +4,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/v60_type_r/keyboard.json b/keyboards/v60_type_r/keyboard.json index eba729220a..90c7e9bb88 100644 --- a/keyboards/v60_type_r/keyboard.json +++ b/keyboards/v60_type_r/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "V60 Type R", "manufacturer": "KB Paradise", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x7432", @@ -15,7 +14,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/vagrant_10/keyboard.json b/keyboards/vagrant_10/keyboard.json index 26b68b6923..4bf29fba11 100644 --- a/keyboards/vagrant_10/keyboard.json +++ b/keyboards/vagrant_10/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/vertex/angle65/keyboard.json b/keyboards/vertex/angle65/keyboard.json index ef0aacfef4..3047d82dfa 100644 --- a/keyboards/vertex/angle65/keyboard.json +++ b/keyboards/vertex/angle65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ANGLE65", "manufacturer": "vertex", - "url": "", "maintainer": "EasonQian1, Vertex-kb", "usb": { "vid": "0x9954", diff --git a/keyboards/vertex/angler2/keyboard.json b/keyboards/vertex/angler2/keyboard.json index 02541f6c86..2d6e65b304 100644 --- a/keyboards/vertex/angler2/keyboard.json +++ b/keyboards/vertex/angler2/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/vertex/arc60/keyboard.json b/keyboards/vertex/arc60/keyboard.json index ab98c446f0..7bca331f44 100644 --- a/keyboards/vertex/arc60/keyboard.json +++ b/keyboards/vertex/arc60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ARC60", "manufacturer": "vertex", - "url": "", "maintainer": "EasonQian1, Vertex-kb", "usb": { "vid": "0x8354", diff --git a/keyboards/vertex/arc60h/keyboard.json b/keyboards/vertex/arc60h/keyboard.json index e6fed06bc1..684bbb9538 100644 --- a/keyboards/vertex/arc60h/keyboard.json +++ b/keyboards/vertex/arc60h/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "ARC60H", "manufacturer": "vertex", - "url": "", "maintainer": "EasonQian1, Vertex-kb", "usb": { "vid": "0x7374", diff --git a/keyboards/vertex/cycle7/keyboard.json b/keyboards/vertex/cycle7/keyboard.json index 9d55b63fec..ef06889309 100644 --- a/keyboards/vertex/cycle7/keyboard.json +++ b/keyboards/vertex/cycle7/keyboard.json @@ -9,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/vertex/cycle8/keyboard.json b/keyboards/vertex/cycle8/keyboard.json index 100c2d21f1..d00ef3eb49 100644 --- a/keyboards/vertex/cycle8/keyboard.json +++ b/keyboards/vertex/cycle8/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Cycle8", "manufacturer": "vertex", - "url": "", "maintainer": "Eason", "usb": { "vid": "0x8A94", @@ -11,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/viendi8l/keyboard.json b/keyboards/viendi8l/keyboard.json index f6df59e08b..d87b95a1a0 100644 --- a/keyboards/viendi8l/keyboard.json +++ b/keyboards/viendi8l/keyboard.json @@ -20,8 +20,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/viktus/at101_bh/keyboard.json b/keyboards/viktus/at101_bh/keyboard.json index a315288cac..de7498964e 100644 --- a/keyboards/viktus/at101_bh/keyboard.json +++ b/keyboards/viktus/at101_bh/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/viktus/minne/keyboard.json b/keyboards/viktus/minne/keyboard.json index bfb3f8a8a6..66700c47b2 100644 --- a/keyboards/viktus/minne/keyboard.json +++ b/keyboards/viktus/minne/keyboard.json @@ -13,8 +13,6 @@ "features": { "rgblight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/viktus/minne_topre/keyboard.json b/keyboards/viktus/minne_topre/keyboard.json index 6919e7f9cc..a0e142cd57 100644 --- a/keyboards/viktus/minne_topre/keyboard.json +++ b/keyboards/viktus/minne_topre/keyboard.json @@ -12,8 +12,6 @@ "processor": "atmega32u4", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/viktus/omnikey_bh/keyboard.json b/keyboards/viktus/omnikey_bh/keyboard.json index 3356bf1eb2..8128a30b25 100644 --- a/keyboards/viktus/omnikey_bh/keyboard.json +++ b/keyboards/viktus/omnikey_bh/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Omnikey Blackheart", "manufacturer": "blindassassin111", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/viktus/osav2/keyboard.json b/keyboards/viktus/osav2/keyboard.json index 34c2089181..07ee36e849 100644 --- a/keyboards/viktus/osav2/keyboard.json +++ b/keyboards/viktus/osav2/keyboard.json @@ -14,8 +14,6 @@ "backlight": true, "rgblight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/viktus/osav2_numpad/keyboard.json b/keyboards/viktus/osav2_numpad/keyboard.json index 941d65f367..c6975faee4 100644 --- a/keyboards/viktus/osav2_numpad/keyboard.json +++ b/keyboards/viktus/osav2_numpad/keyboard.json @@ -13,8 +13,6 @@ "features": { "rgblight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/viktus/osav2_numpad_topre/keyboard.json b/keyboards/viktus/osav2_numpad_topre/keyboard.json index 55ca939e3f..a1ccbfc251 100644 --- a/keyboards/viktus/osav2_numpad_topre/keyboard.json +++ b/keyboards/viktus/osav2_numpad_topre/keyboard.json @@ -12,8 +12,6 @@ "processor": "atmega32u4", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/viktus/osav2_topre/keyboard.json b/keyboards/viktus/osav2_topre/keyboard.json index 1f2120ed57..38a2a46335 100644 --- a/keyboards/viktus/osav2_topre/keyboard.json +++ b/keyboards/viktus/osav2_topre/keyboard.json @@ -12,8 +12,6 @@ "processor": "atmega32u4", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/viktus/smolka/keyboard.json b/keyboards/viktus/smolka/keyboard.json index e2cd55a405..652d44fa8c 100644 --- a/keyboards/viktus/smolka/keyboard.json +++ b/keyboards/viktus/smolka/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Smolka", "manufacturer": "Viktus Design LLC", - "url": "", "maintainer": "jrfhoutx", "usb": { "vid": "0x5644", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/viktus/sp111_v2/keyboard.json b/keyboards/viktus/sp111_v2/keyboard.json index 63c531ee44..e5e58be23e 100644 --- a/keyboards/viktus/sp111_v2/keyboard.json +++ b/keyboards/viktus/sp111_v2/keyboard.json @@ -7,8 +7,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/viktus/sp_mini/keyboard.json b/keyboards/viktus/sp_mini/keyboard.json index 25aa4c9494..f6a54f131d 100644 --- a/keyboards/viktus/sp_mini/keyboard.json +++ b/keyboards/viktus/sp_mini/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "SP_Mini", "manufacturer": "Viktus Design LLC", - "url": "", "maintainer": "jrfhoutx", "usb": { "vid": "0x5644", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/viktus/styrka/keyboard.json b/keyboards/viktus/styrka/keyboard.json index 98d46bc81a..e5f36bad58 100644 --- a/keyboards/viktus/styrka/keyboard.json +++ b/keyboards/viktus/styrka/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/viktus/styrka_topre/keyboard.json b/keyboards/viktus/styrka_topre/keyboard.json index 7095a8f484..496bc39ca2 100644 --- a/keyboards/viktus/styrka_topre/keyboard.json +++ b/keyboards/viktus/styrka_topre/keyboard.json @@ -12,8 +12,6 @@ "processor": "atmega32u4", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/viktus/vkr94/keyboard.json b/keyboards/viktus/vkr94/keyboard.json index 31fd8ee1c7..e31fc62feb 100644 --- a/keyboards/viktus/vkr94/keyboard.json +++ b/keyboards/viktus/vkr94/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "VKR 94", "manufacturer": "Viktus Design", - "url": "", "maintainer": "BlindAssassin111", "usb": { "vid": "0x5644", @@ -13,8 +12,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/viktus/z150_bh/keyboard.json b/keyboards/viktus/z150_bh/keyboard.json index 27754da543..29bba7b8ab 100644 --- a/keyboards/viktus/z150_bh/keyboard.json +++ b/keyboards/viktus/z150_bh/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Z-150 Blackheart", "manufacturer": "blindassassin111", - "url": "", "maintainer": "qmk, blindassassin111", "usb": { "vid": "0xFEED", @@ -11,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/vinhcatba/uncertainty/keyboard.json b/keyboards/vinhcatba/uncertainty/keyboard.json index 5f35a144d8..d8a1b81f92 100644 --- a/keyboards/vinhcatba/uncertainty/keyboard.json +++ b/keyboards/vinhcatba/uncertainty/keyboard.json @@ -14,8 +14,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "wpm": true, "encoder": true, "extrakey": true, @@ -47,10 +45,8 @@ "override_rgb": true }, "led_count": 14, - "max_brightness": 255, "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0000", diff --git a/keyboards/vitamins_included/info.json b/keyboards/vitamins_included/info.json index 60907cdba3..305c740475 100644 --- a/keyboards/vitamins_included/info.json +++ b/keyboards/vitamins_included/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Vitamins Included", "manufacturer": "Duckle29", - "url": "", "maintainer": "Duckle29", "build": { "lto": true @@ -9,8 +8,6 @@ "features": { "audio": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/vitamins_included/rev2/rev2.c b/keyboards/vitamins_included/rev2/rev2.c index e445a3da45..28bd73cc75 100644 --- a/keyboards/vitamins_included/rev2/rev2.c +++ b/keyboards/vitamins_included/rev2/rev2.c @@ -12,7 +12,7 @@ bool is_keyboard_left(void) { gpio_set_pin_input(SPLIT_HAND_PIN); return x; #elif defined(EE_HANDS) - return eeprom_read_byte(EECONFIG_HANDEDNESS); + return eeconfig_read_handedness(); #endif return is_keyboard_master(); diff --git a/keyboards/void/voidhhkb_hotswap/keyboard.json b/keyboards/void/voidhhkb_hotswap/keyboard.json index 460454cc5f..f2bdcd246e 100644 --- a/keyboards/void/voidhhkb_hotswap/keyboard.json +++ b/keyboards/void/voidhhkb_hotswap/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["B11", "B10", "B2", "B1", "B0"] }, "processor": "STM32F072", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0002", diff --git a/keyboards/vt40/keyboard.json b/keyboards/vt40/keyboard.json index 4a8178b8d5..4d4455d35c 100644 --- a/keyboards/vt40/keyboard.json +++ b/keyboards/vt40/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/waldo/keyboard.json b/keyboards/waldo/keyboard.json index b3076d79cc..f2107fea31 100644 --- a/keyboards/waldo/keyboard.json +++ b/keyboards/waldo/keyboard.json @@ -10,7 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/walletburner/cajal/keyboard.json b/keyboards/walletburner/cajal/keyboard.json index e11c62ec87..03fb89b23e 100644 --- a/keyboards/walletburner/cajal/keyboard.json +++ b/keyboards/walletburner/cajal/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/walletburner/neuron/keyboard.json b/keyboards/walletburner/neuron/keyboard.json index 1d9ce89387..d353b0b623 100644 --- a/keyboards/walletburner/neuron/keyboard.json +++ b/keyboards/walletburner/neuron/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/waterfowl/keyboard.json b/keyboards/waterfowl/keyboard.json index 73f62a77eb..9e08da57c0 100644 --- a/keyboards/waterfowl/keyboard.json +++ b/keyboards/waterfowl/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Waterfowl", "manufacturer": "CyanDuck", - "url": "", "maintainer": "JW2586", "usb": { "vid": "0xFEED", diff --git a/keyboards/wavtype/foundation/keyboard.json b/keyboards/wavtype/foundation/keyboard.json index 4b1dd1d348..49c097d27a 100644 --- a/keyboards/wavtype/foundation/keyboard.json +++ b/keyboards/wavtype/foundation/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "foundation", "manufacturer": "protozoa.studio", - "url": "", "maintainer": "wavtype", "usb": { "vid": "0x03A7", @@ -31,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/wavtype/p01_ultra/keyboard.json b/keyboards/wavtype/p01_ultra/keyboard.json index c44f0bd3bd..ac56e454a8 100644 --- a/keyboards/wavtype/p01_ultra/keyboard.json +++ b/keyboards/wavtype/p01_ultra/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "p01_ultra", "manufacturer": "wavtype", - "url": "", "maintainer": "wavtype", "usb": { "vid": "0x03A7", @@ -30,8 +29,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/weirdo/geminate60/keyboard.json b/keyboards/weirdo/geminate60/keyboard.json index 12bc42b30d..3008e2e7c6 100644 --- a/keyboards/weirdo/geminate60/keyboard.json +++ b/keyboards/weirdo/geminate60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Geminate60", "manufacturer": "Weirdo", - "url": "", "maintainer": "Weirdo-F", "usb": { "vid": "0x7764", @@ -16,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/weirdo/kelowna/rgb64/keyboard.json b/keyboards/weirdo/kelowna/rgb64/keyboard.json index 4822f979fe..3b56deb894 100644 --- a/keyboards/weirdo/kelowna/rgb64/keyboard.json +++ b/keyboards/weirdo/kelowna/rgb64/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "kelownaRGB64", "manufacturer": "Weirdo", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x7764", @@ -16,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/weirdo/ls_60/keyboard.json b/keyboards/weirdo/ls_60/keyboard.json index 7ab1f2f6cb..871d1a4929 100644 --- a/keyboards/weirdo/ls_60/keyboard.json +++ b/keyboards/weirdo/ls_60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "LS_60", "manufacturer": "Weirdo", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x7764", @@ -16,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/weirdo/naiping/np64/keyboard.json b/keyboards/weirdo/naiping/np64/keyboard.json index f620fb1169..dc7ad18572 100644 --- a/keyboards/weirdo/naiping/np64/keyboard.json +++ b/keyboards/weirdo/naiping/np64/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NP64", "manufacturer": "Weirdo", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x7764", @@ -16,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/weirdo/naiping/nphhkb/keyboard.json b/keyboards/weirdo/naiping/nphhkb/keyboard.json index cc791374b4..870ad3950e 100644 --- a/keyboards/weirdo/naiping/nphhkb/keyboard.json +++ b/keyboards/weirdo/naiping/nphhkb/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NPhhkb", "manufacturer": "Weirdo", - "url": "", "maintainer": "weirdo-f", "usb": { "vid": "0x7764", @@ -16,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/weirdo/naiping/npminila/keyboard.json b/keyboards/weirdo/naiping/npminila/keyboard.json index b4048a52cf..5e8c8d8947 100644 --- a/keyboards/weirdo/naiping/npminila/keyboard.json +++ b/keyboards/weirdo/naiping/npminila/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NPminila", "manufacturer": "Weirdo", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x7764", @@ -16,8 +15,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/weirdo/tiger910/keyboard.json b/keyboards/weirdo/tiger910/keyboard.json index ca24561ebd..34bd01970a 100644 --- a/keyboards/weirdo/tiger910/keyboard.json +++ b/keyboards/weirdo/tiger910/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "tiger910", "manufacturer": "Weirdo", - "url": "", "maintainer": "Weirdo", "usb": { "vid": "0x7764", diff --git a/keyboards/wekey/polaris/keyboard.json b/keyboards/wekey/polaris/keyboard.json index c3fe12f144..b24a3076f9 100644 --- a/keyboards/wekey/polaris/keyboard.json +++ b/keyboards/wekey/polaris/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Polaris", "manufacturer": "@wekey", - "url": "", "maintainer": "@wekey.dev", "usb": { "vid": "0x5559", @@ -13,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/wekey/we27/keyboard.json b/keyboards/wekey/we27/keyboard.json index d8cb7b0f80..91731cdc39 100644 --- a/keyboards/wekey/we27/keyboard.json +++ b/keyboards/wekey/we27/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "We27", "manufacturer": "@wekey", - "url": "", "maintainer": "@wekey.dev", "usb": { "vid": "0x5559", diff --git a/keyboards/werk_technica/one/board.h b/keyboards/werk_technica/one/board.h new file mode 100644 index 0000000000..3ad450d023 --- /dev/null +++ b/keyboards/werk_technica/one/board.h @@ -0,0 +1,8 @@ +// Copyright 2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/werk_technica/one/config.h b/keyboards/werk_technica/one/config.h deleted file mode 100644 index 765e70851b..0000000000 --- a/keyboards/werk_technica/one/config.h +++ /dev/null @@ -1,7 +0,0 @@ -// Copyright 2022 QMK -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Set HSE clock since it differs from F411 default */ -#define STM32_HSECLK 16000000
\ No newline at end of file diff --git a/keyboards/werk_technica/one/keyboard.json b/keyboards/werk_technica/one/keyboard.json index 4933c7fd7c..ba5df0b136 100644 --- a/keyboards/werk_technica/one/keyboard.json +++ b/keyboards/werk_technica/one/keyboard.json @@ -14,8 +14,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/westfoxtrot/aanzee/keyboard.json b/keyboards/westfoxtrot/aanzee/keyboard.json index 3a15014c4e..03990a3929 100644 --- a/keyboards/westfoxtrot/aanzee/keyboard.json +++ b/keyboards/westfoxtrot/aanzee/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "aanzee", "manufacturer": "westfoxtrot", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x21FF", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/westfoxtrot/cyclops/keyboard.json b/keyboards/westfoxtrot/cyclops/keyboard.json index a74926511d..952b81d0e5 100644 --- a/keyboards/westfoxtrot/cyclops/keyboard.json +++ b/keyboards/westfoxtrot/cyclops/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "cyclops", "manufacturer": "westfoxtrot", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x21FF", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/westfoxtrot/cypher/rev1/keyboard.json b/keyboards/westfoxtrot/cypher/rev1/keyboard.json index 30dcc625de..a02c612154 100644 --- a/keyboards/westfoxtrot/cypher/rev1/keyboard.json +++ b/keyboards/westfoxtrot/cypher/rev1/keyboard.json @@ -9,8 +9,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/westfoxtrot/cypher/rev5/keyboard.json b/keyboards/westfoxtrot/cypher/rev5/keyboard.json index 278ff94b06..b33222df97 100644 --- a/keyboards/westfoxtrot/cypher/rev5/keyboard.json +++ b/keyboards/westfoxtrot/cypher/rev5/keyboard.json @@ -9,8 +9,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/westfoxtrot/prophet/keyboard.json b/keyboards/westfoxtrot/prophet/keyboard.json index b431adddae..64a952e286 100644 --- a/keyboards/westfoxtrot/prophet/keyboard.json +++ b/keyboards/westfoxtrot/prophet/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "prophet", "manufacturer": "westfoxtrot", - "url": "", "maintainer": "westfoxtrot", "usb": { "vid": "0xFF21", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/wilba_tech/rama_works_m10_b/keyboard.json b/keyboards/wilba_tech/rama_works_m10_b/keyboard.json index 157baa1c5a..43df7942cb 100644 --- a/keyboards/wilba_tech/rama_works_m10_b/keyboard.json +++ b/keyboards/wilba_tech/rama_works_m10_b/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/rama_works_m50_ax/keyboard.json b/keyboards/wilba_tech/rama_works_m50_ax/keyboard.json index c44032f97c..9018086906 100644 --- a/keyboards/wilba_tech/rama_works_m50_ax/keyboard.json +++ b/keyboards/wilba_tech/rama_works_m50_ax/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/wt60_g/keyboard.json b/keyboards/wilba_tech/wt60_g/keyboard.json index 526a6a9d72..1838cb4809 100644 --- a/keyboards/wilba_tech/wt60_g/keyboard.json +++ b/keyboards/wilba_tech/wt60_g/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/wt60_g2/keyboard.json b/keyboards/wilba_tech/wt60_g2/keyboard.json index 5f62d9d52b..a8a8b186a8 100644 --- a/keyboards/wilba_tech/wt60_g2/keyboard.json +++ b/keyboards/wilba_tech/wt60_g2/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/wt60_h1/keyboard.json b/keyboards/wilba_tech/wt60_h1/keyboard.json index 2832cf3cd7..bd8d687a57 100644 --- a/keyboards/wilba_tech/wt60_h1/keyboard.json +++ b/keyboards/wilba_tech/wt60_h1/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/wt60_h2/keyboard.json b/keyboards/wilba_tech/wt60_h2/keyboard.json index f48e03940c..76c1385fcd 100644 --- a/keyboards/wilba_tech/wt60_h2/keyboard.json +++ b/keyboards/wilba_tech/wt60_h2/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/wt60_h3/keyboard.json b/keyboards/wilba_tech/wt60_h3/keyboard.json index 9078fa9242..cf75517fb1 100644 --- a/keyboards/wilba_tech/wt60_h3/keyboard.json +++ b/keyboards/wilba_tech/wt60_h3/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/wt60_xt/keyboard.json b/keyboards/wilba_tech/wt60_xt/keyboard.json index ba8e8000db..55229a2400 100644 --- a/keyboards/wilba_tech/wt60_xt/keyboard.json +++ b/keyboards/wilba_tech/wt60_xt/keyboard.json @@ -11,8 +11,6 @@ "features": { "audio": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/wt65_d/keyboard.json b/keyboards/wilba_tech/wt65_d/keyboard.json index 3754b3788b..e4e22b1eea 100644 --- a/keyboards/wilba_tech/wt65_d/keyboard.json +++ b/keyboards/wilba_tech/wt65_d/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/wt65_f/keyboard.json b/keyboards/wilba_tech/wt65_f/keyboard.json index fb79856578..b97e180fde 100644 --- a/keyboards/wilba_tech/wt65_f/keyboard.json +++ b/keyboards/wilba_tech/wt65_f/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/wt65_fx/keyboard.json b/keyboards/wilba_tech/wt65_fx/keyboard.json index f53332b6af..a914a804e1 100644 --- a/keyboards/wilba_tech/wt65_fx/keyboard.json +++ b/keyboards/wilba_tech/wt65_fx/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/wt65_g/keyboard.json b/keyboards/wilba_tech/wt65_g/keyboard.json index e097477074..fee51985f2 100644 --- a/keyboards/wilba_tech/wt65_g/keyboard.json +++ b/keyboards/wilba_tech/wt65_g/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/wt65_g2/keyboard.json b/keyboards/wilba_tech/wt65_g2/keyboard.json index 8a7862dcbe..7c5610a3b4 100644 --- a/keyboards/wilba_tech/wt65_g2/keyboard.json +++ b/keyboards/wilba_tech/wt65_g2/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/wt65_h1/keyboard.json b/keyboards/wilba_tech/wt65_h1/keyboard.json index d56321ce5f..f43f4bb8d6 100644 --- a/keyboards/wilba_tech/wt65_h1/keyboard.json +++ b/keyboards/wilba_tech/wt65_h1/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/wt65_xt/keyboard.json b/keyboards/wilba_tech/wt65_xt/keyboard.json index 5331856269..bc5785c3f1 100644 --- a/keyboards/wilba_tech/wt65_xt/keyboard.json +++ b/keyboards/wilba_tech/wt65_xt/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/wt65_xtx/keyboard.json b/keyboards/wilba_tech/wt65_xtx/keyboard.json index 7d60043b91..63660aa750 100644 --- a/keyboards/wilba_tech/wt65_xtx/keyboard.json +++ b/keyboards/wilba_tech/wt65_xtx/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/wt70_jb/keyboard.json b/keyboards/wilba_tech/wt70_jb/keyboard.json index f922810600..8204b1850b 100644 --- a/keyboards/wilba_tech/wt70_jb/keyboard.json +++ b/keyboards/wilba_tech/wt70_jb/keyboard.json @@ -33,8 +33,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/wilba_tech/wt80_g/keyboard.json b/keyboards/wilba_tech/wt80_g/keyboard.json index cc148a9fa0..27526e4e1f 100644 --- a/keyboards/wilba_tech/wt80_g/keyboard.json +++ b/keyboards/wilba_tech/wt80_g/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wilba_tech/wt_main.c b/keyboards/wilba_tech/wt_main.c index 92c43c794d..7e56d98356 100644 --- a/keyboards/wilba_tech/wt_main.c +++ b/keyboards/wilba_tech/wt_main.c @@ -33,7 +33,7 @@ // Called from via_init() if VIA_ENABLE // Called from matrix_init_kb() if not VIA_ENABLE -void via_init_kb(void) +void wt_main_init(void) { // This checks both an EEPROM reset (from bootmagic lite, keycodes) // and also firmware build date (from via_eeprom_is_valid()) @@ -64,11 +64,9 @@ void via_init_kb(void) void matrix_init_kb(void) { // If VIA is disabled, we still need to load backlight settings. - // Call via_init_kb() the same way as via_init(), with setting - // EEPROM valid afterwards. + // Call via_init_kb() the same way as via_init_kb() does. #ifndef VIA_ENABLE - via_init_kb(); - via_eeprom_set_valid(true); + wt_main_init(); #endif // VIA_ENABLE matrix_init_user(); @@ -109,6 +107,10 @@ void suspend_wakeup_init_kb(void) // Moving this to the bottom of this source file is a workaround // for an intermittent compiler error for Atmel compiler. #ifdef VIA_ENABLE +void via_init_kb(void) { + wt_main_init(); +} + void via_custom_value_command_kb(uint8_t *data, uint8_t length) { uint8_t *command_id = &(data[0]); uint8_t *channel_id = &(data[1]); @@ -159,50 +161,3 @@ void via_set_device_indication(uint8_t value) } #endif // VIA_ENABLE - -// -// In the case of VIA being disabled, we still need to check if -// keyboard level EEPROM memory is valid before loading. -// Thus these are copies of the same functions in VIA, since -// the backlight settings reuse VIA's EEPROM magic/version, -// and the ones in via.c won't be compiled in. -// -// Yes, this is sub-optimal, and is only here for completeness -// (i.e. catering to the 1% of people that want wilba.tech LED bling -// AND want persistent settings BUT DON'T want to use dynamic keymaps/VIA). -// -#ifndef VIA_ENABLE - -bool via_eeprom_is_valid(void) -{ - char *p = QMK_BUILDDATE; // e.g. "2019-11-05-11:29:54" - uint8_t magic0 = ( ( p[2] & 0x0F ) << 4 ) | ( p[3] & 0x0F ); - uint8_t magic1 = ( ( p[5] & 0x0F ) << 4 ) | ( p[6] & 0x0F ); - uint8_t magic2 = ( ( p[8] & 0x0F ) << 4 ) | ( p[9] & 0x0F ); - - return (eeprom_read_byte( (void*)VIA_EEPROM_MAGIC_ADDR+0 ) == magic0 && - eeprom_read_byte( (void*)VIA_EEPROM_MAGIC_ADDR+1 ) == magic1 && - eeprom_read_byte( (void*)VIA_EEPROM_MAGIC_ADDR+2 ) == magic2 ); -} - -void via_eeprom_set_valid(bool valid) -{ - char *p = QMK_BUILDDATE; // e.g. "2019-11-05-11:29:54" - uint8_t magic0 = ( ( p[2] & 0x0F ) << 4 ) | ( p[3] & 0x0F ); - uint8_t magic1 = ( ( p[5] & 0x0F ) << 4 ) | ( p[6] & 0x0F ); - uint8_t magic2 = ( ( p[8] & 0x0F ) << 4 ) | ( p[9] & 0x0F ); - - eeprom_update_byte( (void*)VIA_EEPROM_MAGIC_ADDR+0, valid ? magic0 : 0xFF); - eeprom_update_byte( (void*)VIA_EEPROM_MAGIC_ADDR+1, valid ? magic1 : 0xFF); - eeprom_update_byte( (void*)VIA_EEPROM_MAGIC_ADDR+2, valid ? magic2 : 0xFF); -} - -void via_eeprom_reset(void) -{ - // Set the VIA specific EEPROM state as invalid. - via_eeprom_set_valid(false); - // Set the TMK/QMK EEPROM state as invalid. - eeconfig_disable(); -} - -#endif // VIA_ENABLE diff --git a/keyboards/wilba_tech/wt_mono_backlight.c b/keyboards/wilba_tech/wt_mono_backlight.c index 01fefc8ecc..8359aab135 100644 --- a/keyboards/wilba_tech/wt_mono_backlight.c +++ b/keyboards/wilba_tech/wt_mono_backlight.c @@ -25,6 +25,8 @@ #include "progmem.h" #include "eeprom.h" +#include "nvm_eeprom_eeconfig_internal.h" // expose EEPROM addresses, no appetite to move legacy/deprecated code to nvm +#include "nvm_eeprom_via_internal.h" // expose EEPROM addresses, no appetite to move legacy/deprecated code to nvm #include "via.h" // uses EEPROM address, lighting value IDs #define MONO_BACKLIGHT_CONFIG_EEPROM_ADDR (VIA_EEPROM_CUSTOM_CONFIG_ADDR) diff --git a/keyboards/wilba_tech/wt_rgb_backlight.c b/keyboards/wilba_tech/wt_rgb_backlight.c index e52d002060..744bcb262d 100644 --- a/keyboards/wilba_tech/wt_rgb_backlight.c +++ b/keyboards/wilba_tech/wt_rgb_backlight.c @@ -66,6 +66,8 @@ #include "quantum/color.h" #include "eeprom.h" +#include "nvm_eeprom_eeconfig_internal.h" // expose EEPROM addresses, no appetite to move legacy/deprecated code to nvm +#include "nvm_eeprom_via_internal.h" // expose EEPROM addresses, no appetite to move legacy/deprecated code to nvm #include "via.h" // uses EEPROM address, lighting value IDs #define RGB_BACKLIGHT_CONFIG_EEPROM_ADDR (VIA_EEPROM_CUSTOM_CONFIG_ADDR) diff --git a/keyboards/willoucom/keypad/keyboard.json b/keyboards/willoucom/keypad/keyboard.json index dc517ccc16..1d070ea4e2 100644 --- a/keyboards/willoucom/keypad/keyboard.json +++ b/keyboards/willoucom/keypad/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/windstudio/wind_x/r1/keyboard.json b/keyboards/windstudio/wind_x/r1/keyboard.json index 1b5f34fe3e..44202e9685 100644 --- a/keyboards/windstudio/wind_x/r1/keyboard.json +++ b/keyboards/windstudio/wind_x/r1/keyboard.json @@ -15,7 +15,6 @@ "rows": ["F0", "F1", "D2", "D1", "D0"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x6801", diff --git a/keyboards/winkeyless/b87/keyboard.json b/keyboards/winkeyless/b87/keyboard.json index a941445d72..82ef8555ac 100644 --- a/keyboards/winkeyless/b87/keyboard.json +++ b/keyboards/winkeyless/b87/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "B87", "manufacturer": "Winkeyless", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x20A0", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/winkeyless/bface/keyboard.json b/keyboards/winkeyless/bface/keyboard.json index cc5194ef34..1f9685c98f 100644 --- a/keyboards/winkeyless/bface/keyboard.json +++ b/keyboards/winkeyless/bface/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "B.face", "manufacturer": "Winkeyless", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x20A0", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/winkeyless/bmini/keyboard.json b/keyboards/winkeyless/bmini/keyboard.json index 6fdaf62182..644870e8bc 100644 --- a/keyboards/winkeyless/bmini/keyboard.json +++ b/keyboards/winkeyless/bmini/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "B.mini", "manufacturer": "Winkeyless", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x20A0", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/winkeyless/bminiex/keyboard.json b/keyboards/winkeyless/bminiex/keyboard.json index 9e213bd1f8..2794622fc6 100644 --- a/keyboards/winkeyless/bminiex/keyboard.json +++ b/keyboards/winkeyless/bminiex/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/winkeys/mini_winni/keyboard.json b/keyboards/winkeys/mini_winni/keyboard.json index 8f80960f24..5bc83c5459 100644 --- a/keyboards/winkeys/mini_winni/keyboard.json +++ b/keyboards/winkeys/mini_winni/keyboard.json @@ -11,8 +11,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/winry/winry25tc/keyboard.json b/keyboards/winry/winry25tc/keyboard.json index 9a83aded2c..c2682daa9a 100644 --- a/keyboards/winry/winry25tc/keyboard.json +++ b/keyboards/winry/winry25tc/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Winry 25tc", "manufacturer": "SpiderIsland", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -22,8 +21,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "key_lock": true, "mousekey": false, diff --git a/keyboards/winry/winry315/keyboard.json b/keyboards/winry/winry315/keyboard.json index 81971b339f..44b51791e1 100644 --- a/keyboards/winry/winry315/keyboard.json +++ b/keyboards/winry/winry315/keyboard.json @@ -2,7 +2,6 @@ "manufacturer": "Winry", "keyboard_name": "Winry315", "maintainer": "sigprof", - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x0315", @@ -84,8 +83,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/wolf/frogpad/keyboard.json b/keyboards/wolf/frogpad/keyboard.json index 061b9221a7..b6ed0503a2 100644 --- a/keyboards/wolf/frogpad/keyboard.json +++ b/keyboards/wolf/frogpad/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/wolf/kuku65/keyboard.json b/keyboards/wolf/kuku65/keyboard.json index 5146d77d1b..93321a2e0b 100644 --- a/keyboards/wolf/kuku65/keyboard.json +++ b/keyboards/wolf/kuku65/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "kuku65", "manufacturer": "ToastyStoemp", - "url": "", "maintainer": "ToastyStoemp", "usb": { "vid": "0x5453", diff --git a/keyboards/wolf/m60_b/keyboard.json b/keyboards/wolf/m60_b/keyboard.json index 474974d383..df2d0e2a2f 100644 --- a/keyboards/wolf/m60_b/keyboard.json +++ b/keyboards/wolf/m60_b/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -134,7 +132,6 @@ "max_brightness": 120, "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0059", diff --git a/keyboards/wolf/m6_c/keyboard.json b/keyboards/wolf/m6_c/keyboard.json index f6f2416902..c1d3d1302a 100644 --- a/keyboards/wolf/m6_c/keyboard.json +++ b/keyboards/wolf/m6_c/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, @@ -82,7 +80,6 @@ ], "sleep": true }, - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0060", diff --git a/keyboards/wolf/neely65/keyboard.json b/keyboards/wolf/neely65/keyboard.json index 9a90105b96..b7e0d3b13a 100644 --- a/keyboards/wolf/neely65/keyboard.json +++ b/keyboards/wolf/neely65/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["D5", "D3", "D2", "D1", "D0"] }, "processor": "atmega32u4", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0071", diff --git a/keyboards/wolf/ryujin/keyboard.json b/keyboards/wolf/ryujin/keyboard.json index 8e72cccd9e..f34cebb4f6 100644 --- a/keyboards/wolf/ryujin/keyboard.json +++ b/keyboards/wolf/ryujin/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ryujin", "manufacturer": "Miroticaps", - "url": "", "maintainer": "ToastyStoemp", "usb": { "vid": "0x5453", diff --git a/keyboards/wolf/sabre/keyboard.json b/keyboards/wolf/sabre/keyboard.json index 11b235efe7..02c298a59e 100644 --- a/keyboards/wolf/sabre/keyboard.json +++ b/keyboards/wolf/sabre/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Sabre", "manufacturer": "ToastyStoemp", - "url": "", "maintainer": "ToastyStoemp", "usb": { "vid": "0x5453", diff --git a/keyboards/wolf/silhouette/keyboard.json b/keyboards/wolf/silhouette/keyboard.json index 548a89aa19..e71d0fa38c 100644 --- a/keyboards/wolf/silhouette/keyboard.json +++ b/keyboards/wolf/silhouette/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -20,7 +18,6 @@ "rows": ["GP27", "GP26", "GP25", "GP13", "GP3"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0080", diff --git a/keyboards/wolf/twilight/keyboard.json b/keyboards/wolf/twilight/keyboard.json index ed426e85d9..c0bd31bbbe 100644 --- a/keyboards/wolf/twilight/keyboard.json +++ b/keyboards/wolf/twilight/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["GP28", "GP27", "GP26", "GP25", "GP13", "GP3"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0077", diff --git a/keyboards/wolf/ziggurat/keyboard.json b/keyboards/wolf/ziggurat/keyboard.json index bb12d5ab2f..3f4eb94e8e 100644 --- a/keyboards/wolf/ziggurat/keyboard.json +++ b/keyboards/wolf/ziggurat/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true @@ -17,7 +15,6 @@ "rows": ["GP11", "GP10", "GP7", "GP6", "GP23", "GP24", "GP25", "GP26", "GP19", "GP18"] }, "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0084", diff --git a/keyboards/wolfmarkclub/wm1/keyboard.json b/keyboards/wolfmarkclub/wm1/keyboard.json index 0cea5546c8..6b0c896266 100644 --- a/keyboards/wolfmarkclub/wm1/keyboard.json +++ b/keyboards/wolfmarkclub/wm1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "WM1", "manufacturer": "Wolfmark Club", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/woodkeys/bigseries/1key/keyboard.json b/keyboards/woodkeys/bigseries/1key/keyboard.json index 2440b1974b..c3f545e53c 100644 --- a/keyboards/woodkeys/bigseries/1key/keyboard.json +++ b/keyboards/woodkeys/bigseries/1key/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BigSeries 1-Key", "manufacturer": "WoodKeys.click", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/woodkeys/bigseries/2key/keyboard.json b/keyboards/woodkeys/bigseries/2key/keyboard.json index 9c8c34914a..bb4ac4db64 100644 --- a/keyboards/woodkeys/bigseries/2key/keyboard.json +++ b/keyboards/woodkeys/bigseries/2key/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BigSeries 2-Key", "manufacturer": "WoodKeys.click", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/woodkeys/bigseries/3key/keyboard.json b/keyboards/woodkeys/bigseries/3key/keyboard.json index 17870d98ad..35f94cb27f 100644 --- a/keyboards/woodkeys/bigseries/3key/keyboard.json +++ b/keyboards/woodkeys/bigseries/3key/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BigSeries 3-Key", "manufacturer": "WoodKeys.click", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/woodkeys/bigseries/4key/keyboard.json b/keyboards/woodkeys/bigseries/4key/keyboard.json index 1e44fc2375..5637e1ab5a 100644 --- a/keyboards/woodkeys/bigseries/4key/keyboard.json +++ b/keyboards/woodkeys/bigseries/4key/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "BigSeries 4-Key", "manufacturer": "WoodKeys.click", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/woodkeys/meira/info.json b/keyboards/woodkeys/meira/info.json index 3ad2918d8e..0b73ffd7e6 100644 --- a/keyboards/woodkeys/meira/info.json +++ b/keyboards/woodkeys/meira/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Meira", "manufacturer": "WoodKeys.click", - "url": "", "maintainer": "colemarkham", "usb": { "vid": "0xFEED", diff --git a/keyboards/woodkeys/scarletbandana/keyboard.json b/keyboards/woodkeys/scarletbandana/keyboard.json index f6c4342efa..439c59e38d 100644 --- a/keyboards/woodkeys/scarletbandana/keyboard.json +++ b/keyboards/woodkeys/scarletbandana/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Scarlet Bandana Version IV Mark 2", "manufacturer": "WoodKeys.click", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -32,8 +31,6 @@ "features": { "audio": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/work_louder/micro/keyboard.json b/keyboards/work_louder/micro/keyboard.json index 1b57ca82e8..b8da74dd92 100644 --- a/keyboards/work_louder/micro/keyboard.json +++ b/keyboards/work_louder/micro/keyboard.json @@ -5,8 +5,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -38,7 +36,6 @@ "hue": 213 }, "brightness_steps": 8, - "hue_steps": 8, "led_count": 8, "max_brightness": 150, "saturation_steps": 8, diff --git a/keyboards/work_louder/numpad/keyboard.json b/keyboards/work_louder/numpad/keyboard.json index bd615c4080..fa4f3be9fe 100644 --- a/keyboards/work_louder/numpad/keyboard.json +++ b/keyboards/work_louder/numpad/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, @@ -99,7 +97,6 @@ "hue": 213 }, "brightness_steps": 8, - "hue_steps": 8, "led_count": 8, "max_brightness": 120, "saturation_steps": 8, diff --git a/keyboards/wsk/alpha9/keyboard.json b/keyboards/wsk/alpha9/keyboard.json index 41b95130c6..acdc1be307 100644 --- a/keyboards/wsk/alpha9/keyboard.json +++ b/keyboards/wsk/alpha9/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Alpha9", "manufacturer": "Worldspawn00", - "url": "", "maintainer": "Worldspawn00", "usb": { "vid": "0x5753", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/wsk/g4m3ralpha/keyboard.json b/keyboards/wsk/g4m3ralpha/keyboard.json index b5cdb7ce10..4f88fd0ce1 100644 --- a/keyboards/wsk/g4m3ralpha/keyboard.json +++ b/keyboards/wsk/g4m3ralpha/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "G4M3Ralpha", "manufacturer": "Worldspawn00", - "url": "", "maintainer": "Worldspawn00", "usb": { "vid": "0x5753", @@ -35,8 +34,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/wsk/houndstooth/keyboard.json b/keyboards/wsk/houndstooth/keyboard.json index 2be2b36968..d7596b151a 100644 --- a/keyboards/wsk/houndstooth/keyboard.json +++ b/keyboards/wsk/houndstooth/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/wsk/jerkin/keyboard.json b/keyboards/wsk/jerkin/keyboard.json index 43fc8d107d..3fc05080b0 100644 --- a/keyboards/wsk/jerkin/keyboard.json +++ b/keyboards/wsk/jerkin/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/wsk/kodachi50/keyboard.json b/keyboards/wsk/kodachi50/keyboard.json index 3f5843fd1a..c93952d808 100644 --- a/keyboards/wsk/kodachi50/keyboard.json +++ b/keyboards/wsk/kodachi50/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/wsk/pain27/keyboard.json b/keyboards/wsk/pain27/keyboard.json index a01e887e99..af882a112e 100644 --- a/keyboards/wsk/pain27/keyboard.json +++ b/keyboards/wsk/pain27/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/wsk/sl40/keyboard.json b/keyboards/wsk/sl40/keyboard.json index aba29855dd..9c6752b98c 100644 --- a/keyboards/wsk/sl40/keyboard.json +++ b/keyboards/wsk/sl40/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/wsk/tkl30/keyboard.json b/keyboards/wsk/tkl30/keyboard.json index 909f72d4cf..4a767c1da8 100644 --- a/keyboards/wsk/tkl30/keyboard.json +++ b/keyboards/wsk/tkl30/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/wuque/creek70/keyboard.json b/keyboards/wuque/creek70/keyboard.json index e7227ace8e..23207bf2e9 100644 --- a/keyboards/wuque/creek70/keyboard.json +++ b/keyboards/wuque/creek70/keyboard.json @@ -7,8 +7,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/wuque/ikki68/keyboard.json b/keyboards/wuque/ikki68/keyboard.json index d666b0b5de..a8ec08fd61 100644 --- a/keyboards/wuque/ikki68/keyboard.json +++ b/keyboards/wuque/ikki68/keyboard.json @@ -36,8 +36,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/wuque/mammoth20x/keyboard.json b/keyboards/wuque/mammoth20x/keyboard.json index 6c8e252541..0626a4d4a9 100644 --- a/keyboards/wuque/mammoth20x/keyboard.json +++ b/keyboards/wuque/mammoth20x/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "encoder": true, "extrakey": true, diff --git a/keyboards/wuque/mammoth75x/keyboard.json b/keyboards/wuque/mammoth75x/keyboard.json index 1e0028dfe9..f276715960 100644 --- a/keyboards/wuque/mammoth75x/keyboard.json +++ b/keyboards/wuque/mammoth75x/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "encoder": true, "extrakey": true, diff --git a/keyboards/wuque/nemui65/keyboard.json b/keyboards/wuque/nemui65/keyboard.json index 239fe991bb..49c58aea06 100644 --- a/keyboards/wuque/nemui65/keyboard.json +++ b/keyboards/wuque/nemui65/keyboard.json @@ -13,8 +13,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/wuque/promise87/ansi/keyboard.json b/keyboards/wuque/promise87/ansi/keyboard.json index 2c7008b646..e4a212a3d8 100644 --- a/keyboards/wuque/promise87/ansi/keyboard.json +++ b/keyboards/wuque/promise87/ansi/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/wuque/promise87/wkl/keyboard.json b/keyboards/wuque/promise87/wkl/keyboard.json index 4849b238e1..b9e4396f2d 100644 --- a/keyboards/wuque/promise87/wkl/keyboard.json +++ b/keyboards/wuque/promise87/wkl/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/wuque/tata80/wk/keyboard.json b/keyboards/wuque/tata80/wk/keyboard.json index 957a635dcb..5b5b1fe50e 100644 --- a/keyboards/wuque/tata80/wk/keyboard.json +++ b/keyboards/wuque/tata80/wk/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/wuque/tata80/wkl/keyboard.json b/keyboards/wuque/tata80/wkl/keyboard.json index 4613f97f67..d8633e99f9 100644 --- a/keyboards/wuque/tata80/wkl/keyboard.json +++ b/keyboards/wuque/tata80/wkl/keyboard.json @@ -11,8 +11,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false diff --git a/keyboards/x16/keyboard.json b/keyboards/x16/keyboard.json index 4d407e5332..32c6581237 100644 --- a/keyboards/x16/keyboard.json +++ b/keyboards/x16/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "x16", "manufacturer": "yinxianwei", - "url": "", "maintainer": "yinxianwei", "usb": { "vid": "0x4B50", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/xbows/knight/keyboard.json b/keyboards/xbows/knight/keyboard.json index b675ee1946..d7f0559370 100644 --- a/keyboards/xbows/knight/keyboard.json +++ b/keyboards/xbows/knight/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KNIGHT", "manufacturer": "X-BOWS", - "url": "", "maintainer": "xbows-qmk", "usb": { "vid": "0x5842", @@ -35,8 +34,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/xbows/knight_plus/keyboard.json b/keyboards/xbows/knight_plus/keyboard.json index 0d1600c614..674cead21f 100644 --- a/keyboards/xbows/knight_plus/keyboard.json +++ b/keyboards/xbows/knight_plus/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "KNIGHT_PLUS", "manufacturer": "X-BOWS", - "url": "", "maintainer": "xbows-qmk", "usb": { "vid": "0x5842", @@ -35,8 +34,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/xbows/nature/keyboard.json b/keyboards/xbows/nature/keyboard.json index 6e28c9de30..46080476ea 100644 --- a/keyboards/xbows/nature/keyboard.json +++ b/keyboards/xbows/nature/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NATURE", "manufacturer": "X-BOWS", - "url": "", "maintainer": "xbows-qmk", "usb": { "vid": "0x5842", @@ -35,8 +34,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/xbows/numpad/keyboard.json b/keyboards/xbows/numpad/keyboard.json index 070cc3a288..e2e76185ab 100644 --- a/keyboards/xbows/numpad/keyboard.json +++ b/keyboards/xbows/numpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "NUMPAD", "manufacturer": "X-BOWS", - "url": "", "maintainer": "xbows-qmk", "usb": { "vid": "0x5842", @@ -35,8 +34,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/xbows/ranger/keyboard.json b/keyboards/xbows/ranger/keyboard.json index 945eaafcba..60b7f5b892 100644 --- a/keyboards/xbows/ranger/keyboard.json +++ b/keyboards/xbows/ranger/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ranger", "manufacturer": "X-BOWS", - "url": "", "maintainer": "xbows-qmk", "usb": { "vid": "0x5842", @@ -35,8 +34,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/xbows/woody/keyboard.json b/keyboards/xbows/woody/keyboard.json index 538354507e..da403bacaf 100644 --- a/keyboards/xbows/woody/keyboard.json +++ b/keyboards/xbows/woody/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "WOO-DY", "manufacturer": "X-BOWS", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/xelus/akis/keyboard.json b/keyboards/xelus/akis/keyboard.json index da072b6379..25b4f958d7 100644 --- a/keyboards/xelus/akis/keyboard.json +++ b/keyboards/xelus/akis/keyboard.json @@ -34,7 +34,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/xelus/dawn60/info.json b/keyboards/xelus/dawn60/info.json index 2c71fef898..2eca36e46c 100644 --- a/keyboards/xelus/dawn60/info.json +++ b/keyboards/xelus/dawn60/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dawn60", "manufacturer": "Xelus", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x5845", diff --git a/keyboards/xelus/dharma/keyboard.json b/keyboards/xelus/dharma/keyboard.json index 8d6b746527..adedaedba4 100644 --- a/keyboards/xelus/dharma/keyboard.json +++ b/keyboards/xelus/dharma/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Dharma", "manufacturer": "Xelus", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x5845", @@ -11,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/xelus/la_plus/keyboard.json b/keyboards/xelus/la_plus/keyboard.json index 902364471f..78e16d59dc 100644 --- a/keyboards/xelus/la_plus/keyboard.json +++ b/keyboards/xelus/la_plus/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MechaMaker La+", "manufacturer": "Xelus", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x5845", diff --git a/keyboards/xelus/la_plus/rgb_matrix_kb.inc b/keyboards/xelus/la_plus/rgb_matrix_kb.inc index 88dd2ab0a2..93d52ec9d0 100644 --- a/keyboards/xelus/la_plus/rgb_matrix_kb.inc +++ b/keyboards/xelus/la_plus/rgb_matrix_kb.inc @@ -31,7 +31,7 @@ static void startup_animation_setleds(effect_params_t* params, bool dots) { } else if (num == 0 || num == 1 || num == 2) { return; } else if (num >= 22) { - eeprom_read_block(&rgb_matrix_config, EECONFIG_RGB_MATRIX, sizeof(rgb_matrix_config)); + eeconfig_read_rgb_matrix(&rgb_matrix_config); rgb_matrix_mode_noeeprom(rgb_matrix_config.mode); return; } diff --git a/keyboards/xelus/ninjin/keyboard.json b/keyboards/xelus/ninjin/keyboard.json index 2e7b1640df..cf601d8a80 100644 --- a/keyboards/xelus/ninjin/keyboard.json +++ b/keyboards/xelus/ninjin/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ninjin", "manufacturer": "Xelus", - "url": "", "maintainer": "Xelus", "usb": { "vid": "0x5845", diff --git a/keyboards/xelus/pachi/mini_32u4/keyboard.json b/keyboards/xelus/pachi/mini_32u4/keyboard.json index 590b32de6b..2156e10101 100644 --- a/keyboards/xelus/pachi/mini_32u4/keyboard.json +++ b/keyboards/xelus/pachi/mini_32u4/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Pachi Mini", "manufacturer": "Xelus", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x5845", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/xelus/pachi/rev1/keyboard.json b/keyboards/xelus/pachi/rev1/keyboard.json index 98b59c8641..84e0fee39a 100644 --- a/keyboards/xelus/pachi/rev1/keyboard.json +++ b/keyboards/xelus/pachi/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Pachi Rev 1", "manufacturer": "Xelus", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x5845", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/xelus/pachi/rgb/info.json b/keyboards/xelus/pachi/rgb/info.json index 9bf3ca04ef..20c895f4bc 100644 --- a/keyboards/xelus/pachi/rgb/info.json +++ b/keyboards/xelus/pachi/rgb/info.json @@ -4,7 +4,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/xelus/pachi/rgb/rev1/keyboard.json b/keyboards/xelus/pachi/rgb/rev1/keyboard.json index fe88e695be..a27bcae0fc 100644 --- a/keyboards/xelus/pachi/rgb/rev1/keyboard.json +++ b/keyboards/xelus/pachi/rgb/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Pachi RGB Rev 1", "manufacturer": "Xelus", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x5845", diff --git a/keyboards/xelus/pachi/rgb/rev2/keyboard.json b/keyboards/xelus/pachi/rgb/rev2/keyboard.json index ea712b78d8..8d97dfe49b 100644 --- a/keyboards/xelus/pachi/rgb/rev2/keyboard.json +++ b/keyboards/xelus/pachi/rgb/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Pachi RGB Rev 2", "manufacturer": "Xelus", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x5845", diff --git a/keyboards/xelus/rs108/board.h b/keyboards/xelus/rs108/board.h new file mode 100644 index 0000000000..cce4af40f9 --- /dev/null +++ b/keyboards/xelus/rs108/board.h @@ -0,0 +1,8 @@ +// Copyright 2022 Harrison Chan (Xelus) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/xelus/rs108/config.h b/keyboards/xelus/rs108/config.h index 3d3bc49228..883ed2b9aa 100644 --- a/keyboards/xelus/rs108/config.h +++ b/keyboards/xelus/rs108/config.h @@ -28,6 +28,3 @@ // Hardware Defines #define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE - -// HSE CLK -#define STM32_HSECLK 16000000 diff --git a/keyboards/xelus/rs108/keyboard.json b/keyboards/xelus/rs108/keyboard.json index 12ffbb3fdc..c524ae09ed 100644 --- a/keyboards/xelus/rs108/keyboard.json +++ b/keyboards/xelus/rs108/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "RS108", "manufacturer": "Xelus", - "url": "", "maintainer": "xelus22", "usb": { "vid": "0x5845", diff --git a/keyboards/xelus/rs60/info.json b/keyboards/xelus/rs60/info.json index c36d968d37..a62157826e 100644 --- a/keyboards/xelus/rs60/info.json +++ b/keyboards/xelus/rs60/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "RS60", "manufacturer": "Xelus", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x5845", diff --git a/keyboards/xelus/rs60/rev1/keyboard.json b/keyboards/xelus/rs60/rev1/keyboard.json index f8b3673431..4f894056f6 100644 --- a/keyboards/xelus/rs60/rev1/keyboard.json +++ b/keyboards/xelus/rs60/rev1/keyboard.json @@ -5,7 +5,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/xelus/rs60/rev2_0/board.h b/keyboards/xelus/rs60/rev2_0/board.h new file mode 100644 index 0000000000..cce4af40f9 --- /dev/null +++ b/keyboards/xelus/rs60/rev2_0/board.h @@ -0,0 +1,8 @@ +// Copyright 2022 Harrison Chan (Xelus) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/xelus/rs60/rev2_0/config.h b/keyboards/xelus/rs60/rev2_0/config.h index 3d3bc49228..883ed2b9aa 100644 --- a/keyboards/xelus/rs60/rev2_0/config.h +++ b/keyboards/xelus/rs60/rev2_0/config.h @@ -28,6 +28,3 @@ // Hardware Defines #define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE - -// HSE CLK -#define STM32_HSECLK 16000000 diff --git a/keyboards/xelus/rs60/rev2_0/keyboard.json b/keyboards/xelus/rs60/rev2_0/keyboard.json index 754225b17c..e5506e0040 100644 --- a/keyboards/xelus/rs60/rev2_0/keyboard.json +++ b/keyboards/xelus/rs60/rev2_0/keyboard.json @@ -8,7 +8,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/xelus/rs60/rev2_1/keyboard.json b/keyboards/xelus/rs60/rev2_1/keyboard.json index 12f6e42823..c116abc30b 100644 --- a/keyboards/xelus/rs60/rev2_1/keyboard.json +++ b/keyboards/xelus/rs60/rev2_1/keyboard.json @@ -8,7 +8,6 @@ }, "features": { "bootmagic": true, - "command": false, "console": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/xelus/snap96/keyboard.json b/keyboards/xelus/snap96/keyboard.json index 0be9968c5a..eb0538eff4 100644 --- a/keyboards/xelus/snap96/keyboard.json +++ b/keyboards/xelus/snap96/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Snap96", "manufacturer": "Xelus", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x5845", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/xelus/trinityxttkl/keyboard.json b/keyboards/xelus/trinityxttkl/keyboard.json index eea94c5979..c650626e4b 100644 --- a/keyboards/xelus/trinityxttkl/keyboard.json +++ b/keyboards/xelus/trinityxttkl/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Trinity XT TKL", "manufacturer": "Xelus", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x5845", diff --git a/keyboards/xelus/valor/rev1/keyboard.json b/keyboards/xelus/valor/rev1/keyboard.json index 5b5695f34b..cb69b0eef2 100644 --- a/keyboards/xelus/valor/rev1/keyboard.json +++ b/keyboards/xelus/valor/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Valor Rev1", "manufacturer": "Xelus", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x5845", @@ -32,8 +31,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/xelus/valor/rev2/keyboard.json b/keyboards/xelus/valor/rev2/keyboard.json index 21de5fb4a2..451eeb99ff 100644 --- a/keyboards/xelus/valor/rev2/keyboard.json +++ b/keyboards/xelus/valor/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Valor Rev2", "manufacturer": "Xelus", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x5845", diff --git a/keyboards/xelus/valor/rev3/keyboard.json b/keyboards/xelus/valor/rev3/keyboard.json index 52954fb784..002cdeff5c 100644 --- a/keyboards/xelus/valor/rev3/keyboard.json +++ b/keyboards/xelus/valor/rev3/keyboard.json @@ -45,7 +45,6 @@ "max_brightness": 200, "saturation_steps": 8 }, - "url": "", "usb": { "device_version": "0.0.1", "pid": "0x5652", diff --git a/keyboards/xelus/valor_frl_tkl/info.json b/keyboards/xelus/valor_frl_tkl/info.json index a0b7a70a89..9c909634f7 100644 --- a/keyboards/xelus/valor_frl_tkl/info.json +++ b/keyboards/xelus/valor_frl_tkl/info.json @@ -1,6 +1,5 @@ { "manufacturer": "Xelus", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x5845", diff --git a/keyboards/xelus/valor_frl_tkl/rev2_0/board.h b/keyboards/xelus/valor_frl_tkl/rev2_0/board.h new file mode 100644 index 0000000000..cce4af40f9 --- /dev/null +++ b/keyboards/xelus/valor_frl_tkl/rev2_0/board.h @@ -0,0 +1,8 @@ +// Copyright 2022 Harrison Chan (Xelus) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/xelus/valor_frl_tkl/rev2_0/keyboard.json b/keyboards/xelus/valor_frl_tkl/rev2_0/keyboard.json index 36db1d4398..17e3191da0 100644 --- a/keyboards/xelus/valor_frl_tkl/rev2_0/keyboard.json +++ b/keyboards/xelus/valor_frl_tkl/rev2_0/keyboard.json @@ -8,8 +8,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/xelus/valor_frl_tkl/rev2_1/board.h b/keyboards/xelus/valor_frl_tkl/rev2_1/board.h new file mode 100644 index 0000000000..cce4af40f9 --- /dev/null +++ b/keyboards/xelus/valor_frl_tkl/rev2_1/board.h @@ -0,0 +1,8 @@ +// Copyright 2022 Harrison Chan (Xelus) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include_next <board.h> + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000U diff --git a/keyboards/xelus/valor_frl_tkl/rev2_1/keyboard.json b/keyboards/xelus/valor_frl_tkl/rev2_1/keyboard.json index 376d73a429..378511474d 100644 --- a/keyboards/xelus/valor_frl_tkl/rev2_1/keyboard.json +++ b/keyboards/xelus/valor_frl_tkl/rev2_1/keyboard.json @@ -8,8 +8,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/xelus/xs108/keyboard.json b/keyboards/xelus/xs108/keyboard.json index 14d442d197..d4a022ce7f 100644 --- a/keyboards/xelus/xs108/keyboard.json +++ b/keyboards/xelus/xs108/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XS108", "manufacturer": "Xelus", - "url": "", "maintainer": "xelus22", "usb": { "vid": "0x5845", diff --git a/keyboards/xelus/xs60/hotswap/keyboard.json b/keyboards/xelus/xs60/hotswap/keyboard.json index 45a5e57542..3cceb144ae 100644 --- a/keyboards/xelus/xs60/hotswap/keyboard.json +++ b/keyboards/xelus/xs60/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XS60 Hotswap", "manufacturer": "Xelus", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x5845", diff --git a/keyboards/xelus/xs60/soldered/keyboard.json b/keyboards/xelus/xs60/soldered/keyboard.json index 41af87ba7c..8dace88ce8 100644 --- a/keyboards/xelus/xs60/soldered/keyboard.json +++ b/keyboards/xelus/xs60/soldered/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XS60 Soldered", "manufacturer": "Xelus", - "url": "", "maintainer": "Xelus22", "usb": { "vid": "0x5845", diff --git a/keyboards/xiaomi/mk02/keyboard.json b/keyboards/xiaomi/mk02/keyboard.json index 28d5d8a17d..60326a335b 100644 --- a/keyboards/xiaomi/mk02/keyboard.json +++ b/keyboards/xiaomi/mk02/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "MK02", "manufacturer": "Xiaomi", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/xiudi/xd004/v1/keyboard.json b/keyboards/xiudi/xd004/v1/keyboard.json index a6211edfec..7dc5c9fffc 100644 --- a/keyboards/xiudi/xd004/v1/keyboard.json +++ b/keyboards/xiudi/xd004/v1/keyboard.json @@ -12,8 +12,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/xiudi/xd60/rev2/keyboard.json b/keyboards/xiudi/xd60/rev2/keyboard.json index 8e03fdba20..f4c550c806 100644 --- a/keyboards/xiudi/xd60/rev2/keyboard.json +++ b/keyboards/xiudi/xd60/rev2/keyboard.json @@ -6,8 +6,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/xiudi/xd60/rev3/keyboard.json b/keyboards/xiudi/xd60/rev3/keyboard.json index 09af3681af..1320ef80f4 100644 --- a/keyboards/xiudi/xd60/rev3/keyboard.json +++ b/keyboards/xiudi/xd60/rev3/keyboard.json @@ -6,8 +6,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/xiudi/xd68/keyboard.json b/keyboards/xiudi/xd68/keyboard.json index 620c0b5963..828aa1888d 100644 --- a/keyboards/xiudi/xd68/keyboard.json +++ b/keyboards/xiudi/xd68/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XD68", "manufacturer": "xiudi", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x7844", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/xiudi/xd75/keyboard.json b/keyboards/xiudi/xd75/keyboard.json index df1ec33577..4644c9f826 100644 --- a/keyboards/xiudi/xd75/keyboard.json +++ b/keyboards/xiudi/xd75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XD75", "manufacturer": "xiudi", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x7844", @@ -11,7 +10,6 @@ "features": { "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/xiudi/xd84/keyboard.json b/keyboards/xiudi/xd84/keyboard.json index 0411869633..7c9fc32865 100644 --- a/keyboards/xiudi/xd84/keyboard.json +++ b/keyboards/xiudi/xd84/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XD84", "manufacturer": "KPrepublic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x7844", diff --git a/keyboards/xiudi/xd84pro/keyboard.json b/keyboards/xiudi/xd84pro/keyboard.json index 5388d8f7c2..54c45774dd 100644 --- a/keyboards/xiudi/xd84pro/keyboard.json +++ b/keyboards/xiudi/xd84pro/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XD84 Pro", "manufacturer": "KPrepublic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x7844", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/xiudi/xd96/keyboard.json b/keyboards/xiudi/xd96/keyboard.json index df1fd1cfd4..cae3f223b0 100644 --- a/keyboards/xiudi/xd96/keyboard.json +++ b/keyboards/xiudi/xd96/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XD96", "manufacturer": "KPrepublic", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x7844", diff --git a/keyboards/xmmx/keyboard.json b/keyboards/xmmx/keyboard.json index 2e6813520c..d75b6f21a1 100644 --- a/keyboards/xmmx/keyboard.json +++ b/keyboards/xmmx/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XMMX", "manufacturer": "farmakon", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/xw60/keyboard.json b/keyboards/xw60/keyboard.json index 3bd11e21c1..5c428f4f5b 100644 --- a/keyboards/xw60/keyboard.json +++ b/keyboards/xw60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "XW60", "manufacturer": "Drclick", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/yampad/keyboard.json b/keyboards/yampad/keyboard.json index 76efef72ad..789565e342 100644 --- a/keyboards/yampad/keyboard.json +++ b/keyboards/yampad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Yampad", "manufacturer": "Mattia Dal Ben", - "url": "", "maintainer": "mattdibi", "usb": { "vid": "0x5950", diff --git a/keyboards/yandrstudio/nz64/keyboard.json b/keyboards/yandrstudio/nz64/keyboard.json index 8169449a10..8c36b73c1e 100644 --- a/keyboards/yandrstudio/nz64/keyboard.json +++ b/keyboards/yandrstudio/nz64/keyboard.json @@ -64,8 +64,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/yandrstudio/transition80/keyboard.json b/keyboards/yandrstudio/transition80/keyboard.json index 7f9364a18f..e0a9eb7588 100644 --- a/keyboards/yandrstudio/transition80/keyboard.json +++ b/keyboards/yandrstudio/transition80/keyboard.json @@ -22,8 +22,7 @@ }, "indicators": { "caps_lock": "A15", - "scroll_lock": "B14", - "on_state": 1 + "scroll_lock": "B14" }, "layout_aliases": { "LAYOUT": "LAYOUT_all" diff --git a/keyboards/yandrstudio/zhou65/keyboard.json b/keyboards/yandrstudio/zhou65/keyboard.json index f15cdfb0a2..6e65bacea2 100644 --- a/keyboards/yandrstudio/zhou65/keyboard.json +++ b/keyboards/yandrstudio/zhou65/keyboard.json @@ -7,8 +7,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/yatara/drink_me/keyboard.json b/keyboards/yatara/drink_me/keyboard.json index 970aa4f5d3..c297867709 100644 --- a/keyboards/yatara/drink_me/keyboard.json +++ b/keyboards/yatara/drink_me/keyboard.json @@ -12,8 +12,6 @@ "bootloader": "atmel-dfu", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false diff --git a/keyboards/ydkb/chili/keyboard.json b/keyboards/ydkb/chili/keyboard.json index 92552d96a3..c9d4540f64 100644 --- a/keyboards/ydkb/chili/keyboard.json +++ b/keyboards/ydkb/chili/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Chili", "manufacturer": "YDKB", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5945", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ydkb/just60/keyboard.json b/keyboards/ydkb/just60/keyboard.json index 586ea80f21..f8bd5a3503 100644 --- a/keyboards/ydkb/just60/keyboard.json +++ b/keyboards/ydkb/just60/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Just60", "manufacturer": "YDKB", - "url": "", "maintainer": "thinxer", "usb": { "vid": "0xFEED", diff --git a/keyboards/ydkb/yd68/keyboard.json b/keyboards/ydkb/yd68/keyboard.json index a3542e72c2..6b28f1b0bf 100644 --- a/keyboards/ydkb/yd68/keyboard.json +++ b/keyboards/ydkb/yd68/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "YD68v2", "manufacturer": "YANG", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/ydkb/ydpm40/keyboard.json b/keyboards/ydkb/ydpm40/keyboard.json index b0916f297c..1f750060ac 100644 --- a/keyboards/ydkb/ydpm40/keyboard.json +++ b/keyboards/ydkb/ydpm40/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false @@ -17,7 +15,6 @@ "rows": ["D4", "D5", "D6", "D7"] }, "processor": "atmega328p", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x0240", diff --git a/keyboards/yeehaw/keyboard.json b/keyboards/yeehaw/keyboard.json index aa20239c9d..0f10738685 100644 --- a/keyboards/yeehaw/keyboard.json +++ b/keyboards/yeehaw/keyboard.json @@ -38,8 +38,6 @@ "bootloader": "caterina", "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/ymdk/bface/keyboard.json b/keyboards/ymdk/bface/keyboard.json index 8a0025c01a..42c5ef5461 100644 --- a/keyboards/ymdk/bface/keyboard.json +++ b/keyboards/ymdk/bface/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "B.face", "manufacturer": "YMDK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x594D", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": false, "command": true, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/ymdk/id75/f103/keyboard.json b/keyboards/ymdk/id75/f103/keyboard.json index 5b1974b3f2..07088ee7cc 100644 --- a/keyboards/ymdk/id75/f103/keyboard.json +++ b/keyboards/ymdk/id75/f103/keyboard.json @@ -1,5 +1,4 @@ { - "manufacturer": "YMDK", "bootloader": "uf2boot", "matrix_pins": { "cols": ["A10", "A9", "A8", "B15", "B14", "B13", "B12", "A5", "A6", "A4", "A3", "A2", "A1", "A0", "A15"], diff --git a/keyboards/ymdk/id75/info.json b/keyboards/ymdk/id75/info.json index bbe4d1c73e..e409743abb 100644 --- a/keyboards/ymdk/id75/info.json +++ b/keyboards/ymdk/id75/info.json @@ -1,6 +1,8 @@ { + "manufacturer": "YMDK", "keyboard_name": "Idobao x YMDK ID75", "maintainer": "qmk", + "bootloader_instructions": "Press the button on the back of the PCB twice in quick succession.", "diode_direction": "ROW2COL", "features": { "bootmagic": true, diff --git a/keyboards/ymdk/id75/readme.md b/keyboards/ymdk/id75/readme.md index 4f7e779458..f94d4c14cf 100644 --- a/keyboards/ymdk/id75/readme.md +++ b/keyboards/ymdk/id75/readme.md @@ -8,15 +8,18 @@ A 75-key, 5-row ortholinear keyboard with per-key and underglow RGB LEDs. * Hardware Supported: [Idobao x YMDK ID75](https://www.aliexpress.com/item/3256804537842097.html). **This is not the same PCB as `idobao/id75` or `ymdk/ymd75`.** This keyboard has had multiple PCB revisions, some of which may not work with the firmware in this repository. **Check your PCB before flashing.** * `f103`: (Geehy APM32F103CBT6, uf2boot) + * `rp2040`: (RP2040, rp2040) * Hardware Availability: [YMDK](https://ymdkey.com/products/id75-75-keys-ortholinear-layout-qmk-anodized-aluminum-case-plate-hot-swappable-hot-swap-type-c-pcb-mechanical-keyboard-kit), [AliExpress (YMDK Store)](https://www.aliexpress.com/item/2255800125183974.html), [Amazon](https://www.amazon.com/Ortholinear-Anodized-Aluminum-hot-swappable-Mechanical/dp/B07ZQ8CD88) Make example for this keyboard (after setting up your build environment): make ymdk/id75/f103:default + make ymdk/id75/rp2040:default Flashing example for this keyboard: make ymdk/id75/f103:default:flash + make ymdk/id75/rp2040:default:flash See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). @@ -30,3 +33,4 @@ Enter the bootloader in 3 ways: After entering the bootloader through one of the three methods above, the keyboard will appear as a USB mass storage device. If the CLI is unable to find this device, the compiled `.uf2` file can be manually copied to it. The keyboard will reboot on completion with the new firmware loaded. - `f103`: The volume name is `MT.KEY`. +- `rp2040`: The volume name is `RPI-RP2`. diff --git a/keyboards/sofle/keyhive/config.h b/keyboards/ymdk/id75/rp2040/config.h index cda0be789e..b7a25de160 100644 --- a/keyboards/sofle/keyhive/config.h +++ b/keyboards/ymdk/id75/rp2040/config.h @@ -1,6 +1,4 @@ -/* Copyright - * 2021 solartempest - * 2021 QMK +/* Copyright 2021 Mike Tsao * * 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 @@ -18,6 +16,5 @@ #pragma once -// OLED settings -#define OLED_TIMEOUT 80000 -#define OLED_BRIGHTNESS 90 +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U diff --git a/keyboards/ymdk/id75/rp2040/keyboard.json b/keyboards/ymdk/id75/rp2040/keyboard.json new file mode 100644 index 0000000000..f153203cd0 --- /dev/null +++ b/keyboards/ymdk/id75/rp2040/keyboard.json @@ -0,0 +1,12 @@ +{ + "bootloader": "rp2040", + "matrix_pins": { + "cols": ["GP26", "GP27", "GP4", "GP5", "GP1", "GP23", "GP22", "GP21", "GP28", "GP3", "GP7", "GP12", "GP13", "GP14", "GP15"], + "rows": ["GP8", "GP6", "GP19", "GP20", "GP18"] + }, + "processor": "RP2040", + "ws2812": { + "driver": "vendor", + "pin": "GP2" + } +} diff --git a/keyboards/ymdk/melody96/hotswap/keyboard.json b/keyboards/ymdk/melody96/hotswap/keyboard.json index 6a00e05050..f9b0c723e9 100644 --- a/keyboards/ymdk/melody96/hotswap/keyboard.json +++ b/keyboards/ymdk/melody96/hotswap/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Melody96 Hotswap", "manufacturer": "YMDK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x594D", @@ -16,8 +15,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/ymdk/melody96/soldered/keyboard.json b/keyboards/ymdk/melody96/soldered/keyboard.json index dbb2ddc32b..6a47c6c685 100644 --- a/keyboards/ymdk/melody96/soldered/keyboard.json +++ b/keyboards/ymdk/melody96/soldered/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Melody96 Soldered", "manufacturer": "YMDK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x594D", diff --git a/keyboards/ymdk/np21/keyboard.json b/keyboards/ymdk/np21/keyboard.json index a1997161ee..8527fc5596 100644 --- a/keyboards/ymdk/np21/keyboard.json +++ b/keyboards/ymdk/np21/keyboard.json @@ -12,7 +12,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/ymdk/np24/u4rgb6/keyboard.json b/keyboards/ymdk/np24/u4rgb6/keyboard.json index 3dcd9d63b3..41ae2fd27b 100644 --- a/keyboards/ymdk/np24/u4rgb6/keyboard.json +++ b/keyboards/ymdk/np24/u4rgb6/keyboard.json @@ -10,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": false, diff --git a/keyboards/ymdk/sp64/keyboard.json b/keyboards/ymdk/sp64/keyboard.json index bfb140873a..d1d0d8296c 100644 --- a/keyboards/ymdk/sp64/keyboard.json +++ b/keyboards/ymdk/sp64/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "SP64", "manufacturer": "YMDK", - "url": "", "maintainer": "walston", "usb": { "vid": "0x594D", diff --git a/keyboards/ymdk/wings/keyboard.json b/keyboards/ymdk/wings/keyboard.json index 30c8439b45..304f2a1e95 100644 --- a/keyboards/ymdk/wings/keyboard.json +++ b/keyboards/ymdk/wings/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/ymdk/wingshs/keyboard.json b/keyboards/ymdk/wingshs/keyboard.json index 487d61cc2e..a2b8be2c4e 100644 --- a/keyboards/ymdk/wingshs/keyboard.json +++ b/keyboards/ymdk/wingshs/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/ymdk/yd60mq/info.json b/keyboards/ymdk/yd60mq/info.json index 1af04be687..7fa7b6b4f3 100644 --- a/keyboards/ymdk/yd60mq/info.json +++ b/keyboards/ymdk/yd60mq/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "YD60MQ", "manufacturer": "YMDK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x594D", @@ -10,8 +9,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/ymdk/ym68/keyboard.json b/keyboards/ymdk/ym68/keyboard.json index 5bea9b2e48..4deb5e0cfa 100644 --- a/keyboards/ymdk/ym68/keyboard.json +++ b/keyboards/ymdk/ym68/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "YM68", "manufacturer": "YMDK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x594D", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/ymdk/ymd09/keyboard.json b/keyboards/ymdk/ymd09/keyboard.json index 571aa8c45f..644b4fb8f4 100644 --- a/keyboards/ymdk/ymd09/keyboard.json +++ b/keyboards/ymdk/ymd09/keyboard.json @@ -19,8 +19,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/ymdk/ymd21/v2/keyboard.json b/keyboards/ymdk/ymd21/v2/keyboard.json index 3e2e992ccc..e292fca3de 100644 --- a/keyboards/ymdk/ymd21/v2/keyboard.json +++ b/keyboards/ymdk/ymd21/v2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "YMD21 v2", "manufacturer": "YMDK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x45D4", @@ -11,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/ymdk/ymd40/air40/keyboard.json b/keyboards/ymdk/ymd40/air40/keyboard.json index aaca80156b..0adc965cc7 100644 --- a/keyboards/ymdk/ymd40/air40/keyboard.json +++ b/keyboards/ymdk/ymd40/air40/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "YMDK Air40", "manufacturer": "YMDK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x45D4", diff --git a/keyboards/ymdk/ymd40/v2/keyboard.json b/keyboards/ymdk/ymd40/v2/keyboard.json index 08f5f0a4e3..baecfbb579 100644 --- a/keyboards/ymdk/ymd40/v2/keyboard.json +++ b/keyboards/ymdk/ymd40/v2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "YMD40 v2", "manufacturer": "YMDK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x594D", diff --git a/keyboards/ymdk/ymd67/keyboard.json b/keyboards/ymdk/ymd67/keyboard.json index 5f9ba275f9..4818a79b50 100644 --- a/keyboards/ymdk/ymd67/keyboard.json +++ b/keyboards/ymdk/ymd67/keyboard.json @@ -12,7 +12,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "mousekey": false, "nkro": true, diff --git a/keyboards/ymdk/ymd75/rev1/keyboard.json b/keyboards/ymdk/ymd75/rev1/keyboard.json index f2b664c67f..3c9022ccdb 100644 --- a/keyboards/ymdk/ymd75/rev1/keyboard.json +++ b/keyboards/ymdk/ymd75/rev1/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "YMD75 / MT84", "manufacturer": "YMDK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x20A0", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "key_lock": true, "mousekey": false, diff --git a/keyboards/ymdk/ymd75/rev2/keyboard.json b/keyboards/ymdk/ymd75/rev2/keyboard.json index 272140fd82..8bfebf0207 100644 --- a/keyboards/ymdk/ymd75/rev2/keyboard.json +++ b/keyboards/ymdk/ymd75/rev2/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "YMD75 / MT84", "manufacturer": "YMDK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x20A0", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "key_lock": true, "mousekey": false, diff --git a/keyboards/ymdk/ymd75/rev3/keyboard.json b/keyboards/ymdk/ymd75/rev3/keyboard.json index ae8c20990b..eb5979c566 100644 --- a/keyboards/ymdk/ymd75/rev3/keyboard.json +++ b/keyboards/ymdk/ymd75/rev3/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "YMD75 / MT84", "manufacturer": "YMDK", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x20A0", @@ -12,7 +11,6 @@ "backlight": true, "bootmagic": true, "command": true, - "console": false, "extrakey": true, "key_lock": true, "mousekey": false, diff --git a/keyboards/ymdk/ymd75/rev4/iso/keyboard.json b/keyboards/ymdk/ymd75/rev4/iso/keyboard.json index 180c68beaa..1ff9130019 100644 --- a/keyboards/ymdk/ymd75/rev4/iso/keyboard.json +++ b/keyboards/ymdk/ymd75/rev4/iso/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "YMD75 V4", "manufacturer": "YMDK", - "url": "", "maintainer": "zvecr", "processor": "STM32F103", "bootloader": "uf2boot", @@ -18,8 +17,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/ymdk/ymd96/keyboard.json b/keyboards/ymdk/ymd96/keyboard.json index ed7edd490a..437609f8c8 100644 --- a/keyboards/ymdk/ymd96/keyboard.json +++ b/keyboards/ymdk/ymd96/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "YMD96", "manufacturer": "YMDK", - "url": "", "maintainer": "sparkyman215", "usb": { "vid": "0x20A0", @@ -12,8 +11,6 @@ "features": { "backlight": true, "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "key_lock": true, "mousekey": false, diff --git a/keyboards/yncognito/batpad/keyboard.json b/keyboards/yncognito/batpad/keyboard.json index 06a1f9b090..3e62042a4e 100644 --- a/keyboards/yncognito/batpad/keyboard.json +++ b/keyboards/yncognito/batpad/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Batpad", "manufacturer": "Yncognito", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x7979", @@ -65,8 +64,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/yoichiro/lunakey_macro/keyboard.json b/keyboards/yoichiro/lunakey_macro/keyboard.json index 7268dd3143..c41f7e9d3c 100644 --- a/keyboards/yoichiro/lunakey_macro/keyboard.json +++ b/keyboards/yoichiro/lunakey_macro/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Lunakey Macro", "manufacturer": "yoichiro", - "url": "", "maintainer": "Yoichiro Tanaka", "usb": { "vid": "0x5954", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": false, "mousekey": false, "nkro": false diff --git a/keyboards/yoichiro/lunakey_mini/keyboard.json b/keyboards/yoichiro/lunakey_mini/keyboard.json index 177b3afaa6..41503fe598 100644 --- a/keyboards/yoichiro/lunakey_mini/keyboard.json +++ b/keyboards/yoichiro/lunakey_mini/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Lunakey Mini", "manufacturer": "yoichiro", - "url": "", "maintainer": "qmk", "usb": { "vid": "0x5954", diff --git a/keyboards/yoichiro/lunakey_pico/keyboard.json b/keyboards/yoichiro/lunakey_pico/keyboard.json index 39070d615a..e8326706dc 100644 --- a/keyboards/yoichiro/lunakey_pico/keyboard.json +++ b/keyboards/yoichiro/lunakey_pico/keyboard.json @@ -8,8 +8,6 @@ "bootmagic": false, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": false, "rgblight": true }, @@ -41,10 +39,8 @@ "static_gradient": true, "twinkle": true }, - "hue_steps": 8, "saturation_steps": 8, - "brightness_steps": 8, - "max_brightness": 255 + "brightness_steps": 8 }, "split": { "enabled": true, diff --git a/keyboards/yushakobo/ergo68/keyboard.json b/keyboards/yushakobo/ergo68/keyboard.json index bc61e979b7..ac86eae70b 100644 --- a/keyboards/yushakobo/ergo68/keyboard.json +++ b/keyboards/yushakobo/ergo68/keyboard.json @@ -14,7 +14,6 @@ "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"], "rows": ["D4", "C6", "D7", "E6", "B4"] }, - "url": "", "usb": { "vid": "0x3265", "pid": "0x0011", diff --git a/keyboards/yushakobo/navpad/10_helix_r/keyboard.json b/keyboards/yushakobo/navpad/10_helix_r/keyboard.json index e91f96f0ac..89613390c1 100644 --- a/keyboards/yushakobo/navpad/10_helix_r/keyboard.json +++ b/keyboards/yushakobo/navpad/10_helix_r/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "navpad 1.0 with helix keyboard", "manufacturer": "yushakobo", - "url": "", "maintainer": "yushakobo", "usb": { "vid": "0x3265", diff --git a/keyboards/yushakobo/quick7/keyboard.json b/keyboards/yushakobo/quick7/keyboard.json index ba4854015b..146397d088 100644 --- a/keyboards/yushakobo/quick7/keyboard.json +++ b/keyboards/yushakobo/quick7/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "quick7", "manufacturer": "yushakobo", - "url": "", "maintainer": "yushakobo", "usb": { "vid": "0x3265", diff --git a/keyboards/yynmt/dozen0/keyboard.json b/keyboards/yynmt/dozen0/keyboard.json index 1ad2b13be0..f627152d0e 100644 --- a/keyboards/yynmt/dozen0/keyboard.json +++ b/keyboards/yynmt/dozen0/keyboard.json @@ -30,8 +30,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false, diff --git a/keyboards/zeix/eden/keyboard.json b/keyboards/zeix/eden/keyboard.json index 3d44a663b9..ba0faeac27 100644 --- a/keyboards/zeix/eden/keyboard.json +++ b/keyboards/zeix/eden/keyboard.json @@ -13,13 +13,10 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true }, "indicators": { - "caps_lock": "GP29", - "on_state": 1 + "caps_lock": "GP29" }, "diode_direction": "COL2ROW", "matrix_pins": { diff --git a/keyboards/zeix/qwertyqop60hs/keyboard.json b/keyboards/zeix/qwertyqop60hs/keyboard.json index 6397551ff7..f28fe49ca1 100644 --- a/keyboards/zeix/qwertyqop60hs/keyboard.json +++ b/keyboards/zeix/qwertyqop60hs/keyboard.json @@ -13,8 +13,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true }, "diode_direction": "COL2ROW", diff --git a/keyboards/zfrontier/big_switch/keyboard.json b/keyboards/zfrontier/big_switch/keyboard.json index 2b2ceec094..48b6336887 100644 --- a/keyboards/zfrontier/big_switch/keyboard.json +++ b/keyboards/zfrontier/big_switch/keyboard.json @@ -10,7 +10,6 @@ }, "features": { "bootmagic": false, - "command": false, "console": true, "extrakey": false, "mousekey": false, diff --git a/keyboards/zicodia/tklfrlnrlmlao/keyboard.json b/keyboards/zicodia/tklfrlnrlmlao/keyboard.json index e7c7322f7e..6c592295e0 100644 --- a/keyboards/zicodia/tklfrlnrlmlao/keyboard.json +++ b/keyboards/zicodia/tklfrlnrlmlao/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/ziggurat/keyboard.json b/keyboards/ziggurat/keyboard.json index 11ae657256..873760bade 100644 --- a/keyboards/ziggurat/keyboard.json +++ b/keyboards/ziggurat/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Ziggurat", "manufacturer": "LaminarWoob", - "url": "", "maintainer": "kb-elmo", "usb": { "vid": "0x8F5D", @@ -10,8 +9,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": false diff --git a/keyboards/zigotica/z12/keyboard.json b/keyboards/zigotica/z12/keyboard.json index 2d3e92d6e2..8d797907de 100644 --- a/keyboards/zigotica/z12/keyboard.json +++ b/keyboards/zigotica/z12/keyboard.json @@ -21,8 +21,6 @@ }, "features": { "bootmagic": false, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": false, diff --git a/keyboards/ziptyze/lets_split_v3/keyboard.json b/keyboards/ziptyze/lets_split_v3/keyboard.json index ca53b42240..b3a22c8b2f 100644 --- a/keyboards/ziptyze/lets_split_v3/keyboard.json +++ b/keyboards/ziptyze/lets_split_v3/keyboard.json @@ -7,8 +7,6 @@ "processor": "RP2040", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "rgb_matrix": true diff --git a/keyboards/zj68/keyboard.json b/keyboards/zj68/keyboard.json index 9273b81cd5..cc53f87cf6 100644 --- a/keyboards/zj68/keyboard.json +++ b/keyboards/zj68/keyboard.json @@ -10,8 +10,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": false, "nkro": true diff --git a/keyboards/zlant/keyboard.json b/keyboards/zlant/keyboard.json index 965a259c3b..4185d22d94 100644 --- a/keyboards/zlant/keyboard.json +++ b/keyboards/zlant/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Zlant", "manufacturer": "Matthew Cordier", - "url": "", "maintainer": "qmk", "usb": { "vid": "0xFEED", diff --git a/keyboards/zoo/wampus/keyboard.json b/keyboards/zoo/wampus/keyboard.json index 3e65c50231..966adbf592 100644 --- a/keyboards/zoo/wampus/keyboard.json +++ b/keyboards/zoo/wampus/keyboard.json @@ -11,8 +11,6 @@ "features": { "backlight": true, "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true, diff --git a/keyboards/zos/65s/keyboard.json b/keyboards/zos/65s/keyboard.json index eaf8a97f86..dbaa2ac418 100644 --- a/keyboards/zos/65s/keyboard.json +++ b/keyboards/zos/65s/keyboard.json @@ -6,8 +6,6 @@ "diode_direction": "COL2ROW", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/zsa/moonlander/matrix.c b/keyboards/zsa/moonlander/matrix.c index 867fa85a66..4e5c120950 100644 --- a/keyboards/zsa/moonlander/matrix.c +++ b/keyboards/zsa/moonlander/matrix.c @@ -127,7 +127,7 @@ bool matrix_scan_custom(matrix_row_t current_matrix[]) { matrix_io_delay(); } // read col data - data = ((readPin(A0) << 0) | (readPin(A1) << 1) | (readPin(A2) << 2) | (readPin(A3) << 3) | (readPin(A6) << 4) | (readPin(A7) << 5) | (readPin(B0) << 6)); + data = ((gpio_read_pin(A0) << 0) | (gpio_read_pin(A1) << 1) | (gpio_read_pin(A2) << 2) | (gpio_read_pin(A3) << 3) | (gpio_read_pin(A6) << 4) | (gpio_read_pin(A7) << 5) | (gpio_read_pin(B0) << 6)); // unstrobe row switch (row) { case 0: diff --git a/keyboards/ztboards/after/keyboard.json b/keyboards/ztboards/after/keyboard.json index 1b02390837..fe80cd848e 100644 --- a/keyboards/ztboards/after/keyboard.json +++ b/keyboards/ztboards/after/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "encoder": true, "extrakey": true, "mousekey": true, diff --git a/keyboards/ztboards/noon/keyboard.json b/keyboards/ztboards/noon/keyboard.json index a3f9912acc..e0f8253394 100644 --- a/keyboards/ztboards/noon/keyboard.json +++ b/keyboards/ztboards/noon/keyboard.json @@ -10,8 +10,6 @@ }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/zvecr/split_blackpill/keyboard.json b/keyboards/zvecr/split_blackpill/keyboard.json index d22914d3bd..407314b71a 100644 --- a/keyboards/zvecr/split_blackpill/keyboard.json +++ b/keyboards/zvecr/split_blackpill/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "split_blackpill", "manufacturer": "zvecr", - "url": "", "maintainer": "zvecr", "usb": { "vid": "0x5A56", diff --git a/keyboards/zvecr/zv48/info.json b/keyboards/zvecr/zv48/info.json index 39a05a61e6..0a6e8f7ae9 100644 --- a/keyboards/zvecr/zv48/info.json +++ b/keyboards/zvecr/zv48/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "zv48", "manufacturer": "zvecr", - "url": "", "maintainer": "zvecr", "usb": { "vid": "0x5A56", diff --git a/keyboards/zwag/zwag75/keyboard.json b/keyboards/zwag/zwag75/keyboard.json index 03b97cefc8..646431dcfe 100644 --- a/keyboards/zwag/zwag75/keyboard.json +++ b/keyboards/zwag/zwag75/keyboard.json @@ -1,7 +1,6 @@ { "keyboard_name": "Zwag75", "manufacturer": "Zwag.gg", - "url": "", "maintainer": "DeskDaily", "usb": { "vid": "0x5102", @@ -19,8 +18,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": false, "rgblight": true }, diff --git a/keyboards/zwerg/keyboard.json b/keyboards/zwerg/keyboard.json index a039d0fa39..8239269b79 100644 --- a/keyboards/zwerg/keyboard.json +++ b/keyboards/zwerg/keyboard.json @@ -9,8 +9,6 @@ "diode_direction": "ROW2COL", "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/zykrah/fuyu/keyboard.json b/keyboards/zykrah/fuyu/keyboard.json index 01053d4821..db4236b698 100644 --- a/keyboards/zykrah/fuyu/keyboard.json +++ b/keyboards/zykrah/fuyu/keyboard.json @@ -13,8 +13,6 @@ "bootmagic": false, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true, "rgb_matrix": true }, diff --git a/keyboards/zykrah/slime88/keyboard.json b/keyboards/zykrah/slime88/keyboard.json index 8b15524cca..e3c946b776 100644 --- a/keyboards/zykrah/slime88/keyboard.json +++ b/keyboards/zykrah/slime88/keyboard.json @@ -13,8 +13,6 @@ "bootmagic": true, "mousekey": true, "extrakey": true, - "console": false, - "command": false, "nkro": true }, "diode_direction": "COL2ROW", diff --git a/layouts/community/75_ansi/layout.json b/layouts/community/75_ansi/layout.json index 4b7c5a0d88..72be23b486 100644 --- a/layouts/community/75_ansi/layout.json +++ b/layouts/community/75_ansi/layout.json @@ -3,4 +3,4 @@ [{w:1.5},"","","","","","","","","","","","","",{w:1.5},"",""], [{w:1.75},"","","","","","","","","","","","",{w:2.25},"",""], [{w:2.25},"","","","","","","","","","","",{w:1.75},"","",""], -[{w:1.25},"",{w:1.25},"",{w:1.25},"",{w:6.25},"","","","","","",""]
\ No newline at end of file +[{w:1.25},"",{w:1.25},"",{w:1.25},"",{w:6.25},"","","","","","",""] diff --git a/layouts/community/ortho_1x4/layout.json b/layouts/community/ortho_1x4/layout.json index 6103c7e248..833ff19d4f 100644 --- a/layouts/community/ortho_1x4/layout.json +++ b/layouts/community/ortho_1x4/layout.json @@ -1 +1 @@ -["","","",""]
\ No newline at end of file +["","","",""] diff --git a/layouts/community/ortho_4x12/layout.json b/layouts/community/ortho_4x12/layout.json index 9439b6e0be..961b080642 100644 --- a/layouts/community/ortho_4x12/layout.json +++ b/layouts/community/ortho_4x12/layout.json @@ -1,4 +1,4 @@ ["","","","","","","","","","","",""], ["","","","","","","","","","","",""], ["","","","","","","","","","","",""], -["","","","","","","","","","","",""]
\ No newline at end of file +["","","","","","","","","","","",""] diff --git a/layouts/default/60_ansi_arrow/layout.json b/layouts/default/60_ansi_arrow/layout.json index 7fc631c3d1..163107fda4 100644 --- a/layouts/default/60_ansi_arrow/layout.json +++ b/layouts/default/60_ansi_arrow/layout.json @@ -3,4 +3,4 @@ [{w:1.75},"","","","","","","","","","","","",{w:2.25},""], [{w:2.25},"","","","","","","","","","",{w:1.75},"","",""], [{w:1.25},"",{w:1.25},"",{w:1.25},"",{w:6.25},"","","","","",""] -
\ No newline at end of file + diff --git a/layouts/default/ortho_5x5/readme.md b/layouts/default/ortho_5x5/readme.md index 3dd75765d1..2922976d3a 100644 --- a/layouts/default/ortho_5x5/readme.md +++ b/layouts/default/ortho_5x5/readme.md @@ -1,3 +1,3 @@ # ortho_5x5 - LAYOUT_ortho_5x5
\ No newline at end of file + LAYOUT_ortho_5x5 diff --git a/lib/pico-sdk b/lib/pico-sdk -Subproject a3398d8d3a772f37fef44a74743a1de69770e9c +Subproject d0c5cac430cc955b65efa0e899748853d9a8092 diff --git a/lib/python/qmk/cli/__init__.py b/lib/python/qmk/cli/__init__.py index 3f2ba9ce3c..26905ec134 100644 --- a/lib/python/qmk/cli/__init__.py +++ b/lib/python/qmk/cli/__init__.py @@ -58,7 +58,6 @@ subcommands = [ 'qmk.cli.generate.keyboard_c', 'qmk.cli.generate.keyboard_h', 'qmk.cli.generate.keycodes', - 'qmk.cli.generate.keycodes_tests', 'qmk.cli.generate.keymap_h', 'qmk.cli.generate.make_dependencies', 'qmk.cli.generate.rgb_breathe_table', @@ -215,7 +214,7 @@ if sys.version_info[0] != 3 or sys.version_info[1] < 9: milc_version = __VERSION__.split('.') -if int(milc_version[0]) < 2 and int(milc_version[1]) < 4: +if int(milc_version[0]) < 2 and int(milc_version[1]) < 9: requirements = Path('requirements.txt').resolve() _eprint(f'Your MILC library is too old! Please upgrade: python3 -m pip install -U -r {str(requirements)}') diff --git a/lib/python/qmk/cli/generate/community_modules.py b/lib/python/qmk/cli/generate/community_modules.py index 23678a2fb5..e12daccf1c 100644 --- a/lib/python/qmk/cli/generate/community_modules.py +++ b/lib/python/qmk/cli/generate/community_modules.py @@ -8,7 +8,7 @@ import qmk.path from qmk.info import get_modules from qmk.keyboard import keyboard_completer, keyboard_folder from qmk.commands import dump_lines -from qmk.constants import GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE +from qmk.constants import GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE, GPL2_HEADER_SH_LIKE, GENERATED_HEADER_SH_LIKE from qmk.community_modules import module_api_list, load_module_jsons, find_module_path @@ -121,6 +121,69 @@ def _render_core_implementation(api, modules): return lines +def _generate_features_rules(features_dict): + lines = [] + for feature, enabled in features_dict.items(): + feature = feature.upper() + enabled = 'yes' if enabled else 'no' + lines.append(f'{feature}_ENABLE={enabled}') + return lines + + +def _generate_modules_rules(keyboard, filename): + lines = [] + modules = get_modules(keyboard, filename) + if len(modules) > 0: + lines.append('') + lines.append('OPT_DEFS += -DCOMMUNITY_MODULES_ENABLE=TRUE') + for module in modules: + module_path = qmk.path.unix_style_path(find_module_path(module)) + if not module_path: + raise FileNotFoundError(f"Module '{module}' not found.") + lines.append('') + lines.append(f'COMMUNITY_MODULES += {module_path.name}') # use module_path here instead of module as it may be a subdirectory + lines.append(f'OPT_DEFS += -DCOMMUNITY_MODULE_{module_path.name.upper()}_ENABLE=TRUE') + lines.append(f'COMMUNITY_MODULE_PATHS += {module_path}') + lines.append(f'VPATH += {module_path}') + lines.append(f'SRC += $(wildcard {module_path}/{module_path.name}.c)') + lines.append(f'MODULE_NAME_{module_path.name.upper()} := {module_path.name}') + lines.append(f'MODULE_PATH_{module_path.name.upper()} := {module_path}') + lines.append(f'-include {module_path}/rules.mk') + + module_jsons = load_module_jsons(modules) + for module_json in module_jsons: + if 'features' in module_json: + lines.append('') + lines.append(f'# Module: {module_json["module_name"]}') + lines.extend(_generate_features_rules(module_json['features'])) + return lines + + [email protected]('-o', '--output', arg_only=True, type=qmk.path.normpath, help='File to write to') [email protected]('-q', '--quiet', arg_only=True, action='store_true', help="Quiet mode, only output error messages") [email protected]('-e', '--escape', arg_only=True, action='store_true', help="Escape spaces in quiet mode") [email protected]('-kb', '--keyboard', arg_only=True, type=keyboard_folder, completer=keyboard_completer, help='Keyboard to generate rules.mk for.') [email protected]('filename', nargs='?', arg_only=True, type=qmk.path.FileType('r'), completer=FilesCompleter('.json'), help='A configurator export JSON to be compiled and flashed or a pre-compiled binary firmware file (bin/hex) to be flashed.') [email protected]('Creates a community_modules_rules_mk from a keymap.json file.') +def generate_community_modules_rules_mk(cli): + + rules_mk_lines = [GPL2_HEADER_SH_LIKE, GENERATED_HEADER_SH_LIKE] + + rules_mk_lines.extend(_generate_modules_rules(cli.args.keyboard, cli.args.filename)) + + # Show the results + dump_lines(cli.args.output, rules_mk_lines) + + if cli.args.output: + if cli.args.quiet: + if cli.args.escape: + print(cli.args.output.as_posix().replace(' ', '\\ ')) + else: + print(cli.args.output) + else: + cli.log.info('Wrote rules.mk to %s.', cli.args.output) + + @cli.argument('-o', '--output', arg_only=True, type=qmk.path.normpath, help='File to write to') @cli.argument('-q', '--quiet', arg_only=True, action='store_true', help="Quiet mode, only output error messages") @cli.argument('-kb', '--keyboard', arg_only=True, type=keyboard_folder, completer=keyboard_completer, help='Keyboard to generate community_modules.h for.') diff --git a/lib/python/qmk/cli/generate/keycodes_tests.py b/lib/python/qmk/cli/generate/keycodes_tests.py deleted file mode 100644 index 453b4693a7..0000000000 --- a/lib/python/qmk/cli/generate/keycodes_tests.py +++ /dev/null @@ -1,39 +0,0 @@ -"""Used by the make system to generate a keycode lookup table from keycodes_{version}.json -""" -from milc import cli - -from qmk.constants import GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE -from qmk.commands import dump_lines -from qmk.path import normpath -from qmk.keycodes import load_spec - - -def _generate_defines(lines, keycodes): - lines.append('') - lines.append('std::map<uint16_t, std::string> KEYCODE_ID_TABLE = {') - for key, value in keycodes["keycodes"].items(): - lines.append(f' {{{value.get("key")}, "{value.get("key")}"}},') - lines.append('};') - - [email protected]('-v', '--version', arg_only=True, required=True, help='Version of keycodes to generate.') [email protected]('-o', '--output', arg_only=True, type=normpath, help='File to write to') [email protected]('-q', '--quiet', arg_only=True, action='store_true', help="Quiet mode, only output error messages") [email protected]('Used by the make system to generate a keycode lookup table from keycodes_{version}.json', hidden=True) -def generate_keycodes_tests(cli): - """Generates a keycode to identifier lookup table for unit test output. - """ - - # Build the keycodes.h file. - keycodes_h_lines = [GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE, '// clang-format off'] - keycodes_h_lines.append('extern "C" {\n#include <keycode.h>\n}') - keycodes_h_lines.append('#include <map>') - keycodes_h_lines.append('#include <string>') - keycodes_h_lines.append('#include <cstdint>') - - keycodes = load_spec(cli.args.version) - - _generate_defines(keycodes_h_lines, keycodes) - - # Show the results - dump_lines(cli.args.output, keycodes_h_lines, cli.args.quiet) diff --git a/lib/python/qmk/cli/generate/rules_mk.py b/lib/python/qmk/cli/generate/rules_mk.py index ef4101d77f..358a22fd1d 100755 --- a/lib/python/qmk/cli/generate/rules_mk.py +++ b/lib/python/qmk/cli/generate/rules_mk.py @@ -6,13 +6,12 @@ from dotty_dict import dotty from argcomplete.completers import FilesCompleter from milc import cli -from qmk.info import info_json, get_modules +from qmk.info import info_json from qmk.json_schema import json_load from qmk.keyboard import keyboard_completer, keyboard_folder from qmk.commands import dump_lines, parse_configurator_json -from qmk.path import normpath, unix_style_path, FileType +from qmk.path import normpath, FileType from qmk.constants import GPL2_HEADER_SH_LIKE, GENERATED_HEADER_SH_LIKE -from qmk.community_modules import find_module_path, load_module_jsons def generate_rule(rules_key, rules_value): @@ -56,33 +55,6 @@ def generate_features_rules(features_dict): return lines -def generate_modules_rules(keyboard, filename): - lines = [] - modules = get_modules(keyboard, filename) - if len(modules) > 0: - lines.append('') - lines.append('OPT_DEFS += -DCOMMUNITY_MODULES_ENABLE=TRUE') - for module in modules: - module_path = unix_style_path(find_module_path(module)) - if not module_path: - raise FileNotFoundError(f"Module '{module}' not found.") - lines.append('') - lines.append(f'COMMUNITY_MODULES += {module_path.name}') # use module_path here instead of module as it may be a subdirectory - lines.append(f'OPT_DEFS += -DCOMMUNITY_MODULE_{module_path.name.upper()}_ENABLE=TRUE') - lines.append(f'COMMUNITY_MODULE_PATHS += {module_path}') - lines.append(f'VPATH += {module_path}') - lines.append(f'SRC += $(wildcard {module_path}/{module_path.name}.c)') - lines.append(f'-include {module_path}/rules.mk') - - module_jsons = load_module_jsons(modules) - for module_json in module_jsons: - if 'features' in module_json: - lines.append('') - lines.append(f'# Module: {module_json["module_name"]}') - lines.extend(generate_features_rules(module_json['features'])) - return lines - - @cli.argument('filename', nargs='?', arg_only=True, type=FileType('r'), completer=FilesCompleter('.json'), help='A configurator export JSON to be compiled and flashed or a pre-compiled binary firmware file (bin/hex) to be flashed.') @cli.argument('-o', '--output', arg_only=True, type=normpath, help='File to write to') @cli.argument('-q', '--quiet', arg_only=True, action='store_true', help="Quiet mode, only output error messages") @@ -133,8 +105,6 @@ def generate_rules_mk(cli): if converter: rules_mk_lines.append(generate_rule('CONVERT_TO', converter)) - rules_mk_lines.extend(generate_modules_rules(cli.args.keyboard, cli.args.filename)) - # Show the results dump_lines(cli.args.output, rules_mk_lines) diff --git a/lib/python/qmk/cli/lint.py b/lib/python/qmk/cli/lint.py index bcf905f579..484ddb5bd9 100644 --- a/lib/python/qmk/cli/lint.py +++ b/lib/python/qmk/cli/lint.py @@ -1,5 +1,6 @@ """Command to look over a keyboard/keymap and check for common mistakes. """ +from dotty_dict import dotty from pathlib import Path from milc import cli @@ -11,6 +12,7 @@ from qmk.keymap import locate_keymap, list_keymaps from qmk.path import keyboard from qmk.git import git_get_ignored_files from qmk.c_parse import c_source_files, preprocess_c_file +from qmk.json_schema import json_load CHIBIOS_CONF_CHECKS = ['chconf.h', 'halconf.h', 'mcuconf.h', 'board.h'] INVALID_KB_FEATURES = set(['encoder_map', 'dip_switch_map', 'combo', 'tap_dance', 'via']) @@ -26,7 +28,7 @@ def _list_defaultish_keymaps(kb): defaultish.extend(INVALID_KM_NAMES) keymaps = set() - for x in list_keymaps(kb): + for x in list_keymaps(kb, include_userspace=False): if x in defaultish or x.startswith('default'): keymaps.add(x) @@ -171,6 +173,14 @@ def _handle_invalid_features(kb, info): return ok +def _handle_invalid_config(kb, info): + """Check for invalid keyboard level config + """ + if info.get('url') == "": + cli.log.warning(f'{kb}: Invalid keyboard level config detected - Optional field "url" should not be empty.') + return True + + def _chibios_conf_includenext_check(target): """Check the ChibiOS conf.h for the correct inclusion of the next conf.h """ @@ -206,6 +216,32 @@ def _rules_mk_assignment_only(rules_mk): return errors +def _handle_duplicating_code_defaults(kb, info): + def _collect_dotted_output(kb_info_json, prefix=''): + """Print the info.json in a plain text format with dot-joined keys. + """ + for key in sorted(kb_info_json): + new_prefix = f'{prefix}.{key}' if prefix else key + + if isinstance(kb_info_json[key], dict): + yield from _collect_dotted_output(kb_info_json[key], new_prefix) + elif isinstance(kb_info_json[key], list): + # TODO: handle non primitives? + yield (new_prefix, kb_info_json[key]) + else: + yield (new_prefix, kb_info_json[key]) + + defaults_map = json_load(Path('data/mappings/info_defaults.hjson')) + dotty_info = dotty(info) + + for key, v_default in _collect_dotted_output(defaults_map): + v_info = dotty_info.get(key) + if v_default == v_info: + cli.log.warning(f'{kb}: Option "{key}" duplicates default value of "{v_default}"') + + return True + + def keymap_check(kb, km): """Perform the keymap level checks. """ @@ -255,6 +291,12 @@ def keyboard_check(kb): # noqa C901 if not _handle_invalid_features(kb, kb_info): ok = False + if not _handle_invalid_config(kb, kb_info): + ok = False + + if not _handle_duplicating_code_defaults(kb, kb_info): + ok = False + invalid_files = git_get_ignored_files(f'keyboards/{kb}/') for file in invalid_files: if 'keymap' in file: diff --git a/lib/python/qmk/cli/new/keymap.py b/lib/python/qmk/cli/new/keymap.py index 8b7160f5f2..16865ceb00 100755 --- a/lib/python/qmk/cli/new/keymap.py +++ b/lib/python/qmk/cli/new/keymap.py @@ -1,10 +1,12 @@ """This script automates the copying of the default keymap into your own keymap. """ import re +import json import shutil +from pathlib import Path from milc import cli -from milc.questions import question +from milc.questions import question, choice from qmk.constants import HAS_QMK_USERSPACE, QMK_USERSPACE from qmk.path import is_keyboard, keymaps, keymap @@ -12,6 +14,34 @@ from qmk.git import git_get_username from qmk.decorators import automagic_keyboard, automagic_keymap from qmk.keyboard import keyboard_completer, keyboard_folder from qmk.userspace import UserspaceDefs +from qmk.json_schema import json_load +from qmk.json_encoders import KeymapJSONEncoder +from qmk.info import info_json + + +def _list_available_converters(kb_name): + """Search for converters that can be applied to a given keyboard + """ + if not is_keyboard(kb_name): + return None + + info = info_json(kb_name) + pin_compatible = info.get('pin_compatible') + if not pin_compatible: + return None + + return sorted(folder.name.split('_to_')[-1] for folder in Path('platforms').glob(f'*/converters/{pin_compatible}_to_*')) + + +def _set_converter(file, converter): + """add/overwrite any existing converter specified in keymap.json + """ + json_data = json_load(file) if file.exists() else {} + + json_data['converter'] = converter + + output = json.dumps(json_data, cls=KeymapJSONEncoder, sort_keys=True) + file.write_text(output + '\n', encoding='utf-8') def validate_keymap_name(name): @@ -37,8 +67,28 @@ Keymap name? """ return question(prompt, default=git_get_username()) +def prompt_converter(kb_name): + prompt = """ +{fg_yellow}Configure Development Board{style_reset_all} +For more information, see: +https://docs.qmk.fm/feature_converters + +Use converter? """ + + converters = _list_available_converters(kb_name) + if not converters: + return None + + choices = ['No (default)', *converters] + + answer = choice(prompt, options=choices, default=0) + return None if choices.index(answer) == 0 else answer + + @cli.argument('-kb', '--keyboard', type=keyboard_folder, completer=keyboard_completer, help='Specify keyboard name. Example: 1upkeyboards/1up60hse') @cli.argument('-km', '--keymap', help='Specify the name for the new keymap directory') [email protected]('--converter', help='Specify the name of a converter to configure') [email protected]('--skip-converter', arg_only=True, action='store_true', help='Skip converter') @cli.subcommand('Creates a new keymap for the keyboard of your choosing') @automagic_keyboard @automagic_keymap @@ -51,6 +101,7 @@ def new_keymap(cli): # ask for user input if keyboard or keymap was not provided in the command line kb_name = cli.config.new_keymap.keyboard if cli.config.new_keymap.keyboard else prompt_keyboard() user_name = cli.config.new_keymap.keymap if cli.config.new_keymap.keymap else prompt_user() + converter = cli.config.new_keymap.converter if cli.args.skip_converter or cli.config.new_keymap.converter else prompt_converter(kb_name) # check directories if not is_keyboard(kb_name): @@ -77,6 +128,9 @@ def new_keymap(cli): # create user directory with default keymap files shutil.copytree(keymap_path_default, keymap_path_new, symlinks=True) + if converter: + _set_converter(keymap_path_new / 'keymap.json', converter) + # end message to user cli.log.info(f'{{fg_green}}Created a new keymap called {{fg_cyan}}{user_name}{{fg_green}} in: {{fg_cyan}}{keymap_path_new}.{{fg_reset}}') cli.log.info(f"Compile a firmware with your new keymap by typing: {{fg_yellow}}qmk compile -kb {kb_name} -km {user_name}{{fg_reset}}.") diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index 93eba7376a..d95fd3d799 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py @@ -1066,23 +1066,13 @@ def get_modules(keyboard, keymap_filename): """ modules = [] + kb_info_json = info_json(keyboard) + modules.extend(kb_info_json.get('modules', [])) + if keymap_filename: keymap_json = parse_configurator_json(keymap_filename) if keymap_json: - kb = keymap_json.get('keyboard', None) - if not kb: - kb = keyboard - - if kb: - kb_info_json = info_json(kb) - if kb_info_json: - modules.extend(kb_info_json.get('modules', [])) - modules.extend(keymap_json.get('modules', [])) - elif keyboard: - kb_info_json = info_json(keyboard) - modules.extend(kb_info_json.get('modules', [])) - return list(dict.fromkeys(modules)) # remove dupes diff --git a/lib/python/qmk/json_encoders.py b/lib/python/qmk/json_encoders.py index e83a381d52..e8bcf48996 100755 --- a/lib/python/qmk/json_encoders.py +++ b/lib/python/qmk/json_encoders.py @@ -250,12 +250,14 @@ class CommunityModuleJSONEncoder(QMKJSONEncoder): return '00module_name' if key == 'maintainer': return '01maintainer' + if key == 'license': + return '02license' if key == 'url': - return '02url' + return '03url' if key == 'features': - return '03features' + return '04features' if key == 'keycodes': - return '04keycodes' + return '05keycodes' elif self.indentation_level == 3: # keycodes if key == 'key': return '00key' diff --git a/lib/python/qmk/keymap.py b/lib/python/qmk/keymap.py index 8e36461722..b7138aa4a1 100644 --- a/lib/python/qmk/keymap.py +++ b/lib/python/qmk/keymap.py @@ -399,7 +399,7 @@ def is_keymap_target(keyboard, keymap): return False -def list_keymaps(keyboard, c=True, json=True, additional_files=None, fullpath=False): +def list_keymaps(keyboard, c=True, json=True, additional_files=None, fullpath=False, include_userspace=True): """List the available keymaps for a keyboard. Args: @@ -418,14 +418,19 @@ def list_keymaps(keyboard, c=True, json=True, additional_files=None, fullpath=Fa fullpath When set to True the full path of the keymap relative to the `qmk_firmware` root will be provided. + include_userspace + When set to True, also search userspace for available keymaps + Returns: a sorted list of valid keymap names. """ names = set() + has_userspace = HAS_QMK_USERSPACE and include_userspace + # walk up the directory tree until keyboards_dir # and collect all directories' name with keymap.c file in it - for search_dir in [QMK_FIRMWARE, QMK_USERSPACE] if HAS_QMK_USERSPACE else [QMK_FIRMWARE]: + for search_dir in [QMK_FIRMWARE, QMK_USERSPACE] if has_userspace else [QMK_FIRMWARE]: keyboards_dir = search_dir / Path('keyboards') kb_path = keyboards_dir / keyboard @@ -443,7 +448,7 @@ def list_keymaps(keyboard, c=True, json=True, additional_files=None, fullpath=Fa info = info_json(keyboard) community_parents = list(Path('layouts').glob('*/')) - if HAS_QMK_USERSPACE and (Path(QMK_USERSPACE) / "layouts").exists(): + if has_userspace and (Path(QMK_USERSPACE) / "layouts").exists(): community_parents.append(Path(QMK_USERSPACE) / "layouts") for community_parent in community_parents: diff --git a/modules/qmk/hello_world/qmk_module.json b/modules/qmk/hello_world/qmk_module.json index fd855a6e23..bbd00f3fcc 100644 --- a/modules/qmk/hello_world/qmk_module.json +++ b/modules/qmk/hello_world/qmk_module.json @@ -1,6 +1,7 @@ { "module_name": "Hello World", "maintainer": "QMK Maintainers", + "license": "GPL-2.0-or-later", "features": { "console": true, "deferred_exec": true diff --git a/modules/qmk/super_alt_tab/qmk_module.json b/modules/qmk/super_alt_tab/qmk_module.json index 002f7fb69e..142613a23e 100644 --- a/modules/qmk/super_alt_tab/qmk_module.json +++ b/modules/qmk/super_alt_tab/qmk_module.json @@ -1,6 +1,7 @@ { "module_name": "Super Alt Tab", "maintainer": "QMK Maintainers", + "license": "GPL-2.0-or-later", "keycodes": [ { "key": "COMMUNITY_MODULE_SUPER_ALT_TAB", diff --git a/platforms/avr/drivers/i2c_master.c b/platforms/avr/drivers/i2c_master.c index 64083d862a..9136f4a7b9 100644 --- a/platforms/avr/drivers/i2c_master.c +++ b/platforms/avr/drivers/i2c_master.c @@ -315,4 +315,4 @@ __attribute__((weak)) i2c_status_t i2c_ping_address(uint8_t address, uint16_t ti i2c_status_t status = i2c_start(address, timeout); i2c_stop(); return status; -}
\ No newline at end of file +} diff --git a/platforms/chibios/boards/BONSAI_C4/configs/board.h b/platforms/chibios/boards/BONSAI_C4/configs/board.h index 372b9bb8bc..81c80b2773 100644 --- a/platforms/chibios/boards/BONSAI_C4/configs/board.h +++ b/platforms/chibios/boards/BONSAI_C4/configs/board.h @@ -17,4 +17,4 @@ #include_next <board.h> -#undef STM32_HSE_BYPASS
\ No newline at end of file +#undef STM32_HSE_BYPASS diff --git a/platforms/chibios/boards/BONSAI_C4/configs/config.h b/platforms/chibios/boards/BONSAI_C4/configs/config.h index e933cd6fd1..e0e95eda25 100644 --- a/platforms/chibios/boards/BONSAI_C4/configs/config.h +++ b/platforms/chibios/boards/BONSAI_C4/configs/config.h @@ -87,4 +87,4 @@ #ifndef USB_VBUS_PIN # define USB_VBUS_PIN PAL_LINE(GPIOA, 9) -#endif
\ No newline at end of file +#endif diff --git a/platforms/chibios/boards/BONSAI_C4/configs/halconf.h b/platforms/chibios/boards/BONSAI_C4/configs/halconf.h index 6bab6fbcff..55bafe5cfa 100644 --- a/platforms/chibios/boards/BONSAI_C4/configs/halconf.h +++ b/platforms/chibios/boards/BONSAI_C4/configs/halconf.h @@ -46,4 +46,4 @@ # define SPI_USE_WAIT TRUE #endif -#include_next <halconf.h>
\ No newline at end of file +#include_next <halconf.h> diff --git a/platforms/chibios/boards/GENERIC_STM32_F405XG/board/board.mk b/platforms/chibios/boards/GENERIC_STM32_F405XG/board/board.mk index 6c837bb8ee..00cc9b20b2 100644 --- a/platforms/chibios/boards/GENERIC_STM32_F405XG/board/board.mk +++ b/platforms/chibios/boards/GENERIC_STM32_F405XG/board/board.mk @@ -6,4 +6,4 @@ BOARDINC = $(CHIBIOS)/os/hal/boards/ST_STM32F4_DISCOVERY # Shared variables ALLCSRC += $(BOARDSRC) -ALLINC += $(BOARDINC)
\ No newline at end of file +ALLINC += $(BOARDINC) diff --git a/platforms/chibios/boards/GENERIC_STM32_F407XE/board/board.mk b/platforms/chibios/boards/GENERIC_STM32_F407XE/board/board.mk index 6c837bb8ee..00cc9b20b2 100644 --- a/platforms/chibios/boards/GENERIC_STM32_F407XE/board/board.mk +++ b/platforms/chibios/boards/GENERIC_STM32_F407XE/board/board.mk @@ -6,4 +6,4 @@ BOARDINC = $(CHIBIOS)/os/hal/boards/ST_STM32F4_DISCOVERY # Shared variables ALLCSRC += $(BOARDSRC) -ALLINC += $(BOARDINC)
\ No newline at end of file +ALLINC += $(BOARDINC) diff --git a/platforms/chibios/boards/GENERIC_STM32_F407XE/configs/board.h b/platforms/chibios/boards/GENERIC_STM32_F407XE/configs/board.h index a0d53d86e7..c2f25db810 100644 --- a/platforms/chibios/boards/GENERIC_STM32_F407XE/configs/board.h +++ b/platforms/chibios/boards/GENERIC_STM32_F407XE/configs/board.h @@ -21,4 +21,4 @@ #include_next <board.h> -#undef STM32_HSE_BYPASS
\ No newline at end of file +#undef STM32_HSE_BYPASS diff --git a/platforms/chibios/boards/GENERIC_STM32_G474XE/configs/config.h b/platforms/chibios/boards/GENERIC_STM32_G474XE/configs/config.h index eb74d68e85..da0a634bb5 100644 --- a/platforms/chibios/boards/GENERIC_STM32_G474XE/configs/config.h +++ b/platforms/chibios/boards/GENERIC_STM32_G474XE/configs/config.h @@ -27,4 +27,4 @@ #if 0 #define STM32_BOOTLOADER_DUAL_BANK TRUE #define STM32_BOOTLOADER_DUAL_BANK_GPIO B7 -#endif
\ No newline at end of file +#endif diff --git a/platforms/chibios/boards/GENERIC_WB32_F3G71XX/configs/chconf.h b/platforms/chibios/boards/GENERIC_WB32_F3G71XX/configs/chconf.h index e4afddb6a5..fa0b6f11d0 100644 --- a/platforms/chibios/boards/GENERIC_WB32_F3G71XX/configs/chconf.h +++ b/platforms/chibios/boards/GENERIC_WB32_F3G71XX/configs/chconf.h @@ -23,4 +23,4 @@ #define CH_CFG_ST_TIMEDELTA 0 -#include_next <chconf.h>
\ No newline at end of file +#include_next <chconf.h> diff --git a/platforms/chibios/boards/GENERIC_WB32_FQ95XX/configs/chconf.h b/platforms/chibios/boards/GENERIC_WB32_FQ95XX/configs/chconf.h index e4afddb6a5..fa0b6f11d0 100644 --- a/platforms/chibios/boards/GENERIC_WB32_FQ95XX/configs/chconf.h +++ b/platforms/chibios/boards/GENERIC_WB32_FQ95XX/configs/chconf.h @@ -23,4 +23,4 @@ #define CH_CFG_ST_TIMEDELTA 0 -#include_next <chconf.h>
\ No newline at end of file +#include_next <chconf.h> diff --git a/platforms/chibios/boards/SIPEED_LONGAN_NANO/configs/chconf.h b/platforms/chibios/boards/SIPEED_LONGAN_NANO/configs/chconf.h index 6e5adb0fe1..ca0348e4e0 100644 --- a/platforms/chibios/boards/SIPEED_LONGAN_NANO/configs/chconf.h +++ b/platforms/chibios/boards/SIPEED_LONGAN_NANO/configs/chconf.h @@ -20,4 +20,4 @@ struct _reent; #endif -#include_next <chconf.h>
\ No newline at end of file +#include_next <chconf.h> diff --git a/platforms/chibios/bootloaders/stm32duino.c b/platforms/chibios/bootloaders/stm32duino.c index e2db7fa16c..cc3f6be2df 100644 --- a/platforms/chibios/bootloaders/stm32duino.c +++ b/platforms/chibios/bootloaders/stm32duino.c @@ -25,4 +25,4 @@ __attribute__((weak)) void bootloader_jump(void) { __attribute__((weak)) void mcu_reset(void) { BKP->DR10 = RTC_BOOTLOADER_JUST_UPLOADED; NVIC_SystemReset(); -}
\ No newline at end of file +} diff --git a/platforms/chibios/converters/promicro_to_bonsai_c4/_pin_defs.h b/platforms/chibios/converters/promicro_to_bonsai_c4/_pin_defs.h index 7e6b8ddaf2..deb0628ef8 100644 --- a/platforms/chibios/converters/promicro_to_bonsai_c4/_pin_defs.h +++ b/platforms/chibios/converters/promicro_to_bonsai_c4/_pin_defs.h @@ -37,4 +37,4 @@ // If this is undesirable, either B0 or B5 can be redefined by // using #undef and #define to change its assignment #define B0 PAL_LINE(GPIOB, 2) -#define D5 PAL_LINE(GPIOB, 2)
\ No newline at end of file +#define D5 PAL_LINE(GPIOB, 2) diff --git a/platforms/chibios/converters/promicro_to_bonsai_c4/post_converter.mk b/platforms/chibios/converters/promicro_to_bonsai_c4/post_converter.mk index 5f49b17f8a..beefb9de23 100644 --- a/platforms/chibios/converters/promicro_to_bonsai_c4/post_converter.mk +++ b/platforms/chibios/converters/promicro_to_bonsai_c4/post_converter.mk @@ -2,4 +2,4 @@ BACKLIGHT_DRIVER ?= pwm WS2812_DRIVER ?= pwm SERIAL_DRIVER ?= usart FLASH_DRIVER ?= spi -EEPROM_DRIVER ?= spi
\ No newline at end of file +EEPROM_DRIVER ?= spi diff --git a/platforms/chibios/drivers/i2c_master.c b/platforms/chibios/drivers/i2c_master.c index 1d7fe27633..20850859b5 100644 --- a/platforms/chibios/drivers/i2c_master.c +++ b/platforms/chibios/drivers/i2c_master.c @@ -206,4 +206,4 @@ __attribute__((weak)) i2c_status_t i2c_ping_address(uint8_t address, uint16_t ti // This approach may produce false negative results for I2C devices that do not respond to a register 0 read request. uint8_t data = 0; return i2c_read_register(address, 0, &data, sizeof(data), timeout); -}
\ No newline at end of file +} diff --git a/platforms/chibios/drivers/usbpd_stm32g4.c b/platforms/chibios/drivers/usbpd_stm32g4.c index 21b8f6db95..7603b5627b 100644 --- a/platforms/chibios/drivers/usbpd_stm32g4.c +++ b/platforms/chibios/drivers/usbpd_stm32g4.c @@ -76,4 +76,4 @@ __attribute__((weak)) usbpd_allowance_t usbpd_get_allowance(void) { } return USBPD_500MA; -}
\ No newline at end of file +} diff --git a/platforms/chibios/errno.h b/platforms/chibios/errno.h new file mode 100644 index 0000000000..a411ed9821 --- /dev/null +++ b/platforms/chibios/errno.h @@ -0,0 +1,13 @@ +// Copyright 2025 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once +#include_next <errno.h> + +// Newer versions of picolibc don't seem to provide `__errno_r(r)` in the header file, but is used by ChibiOS. +#ifndef __errno_r +# ifdef __REENT_ERRNO +# define __errno_r(r) _REENT_ERRNO(r) +# else +# define __errno_r(r) (errno) +# endif +#endif diff --git a/platforms/chibios/platform.c b/platforms/chibios/platform.c index d4a229f278..e559f178cd 100644 --- a/platforms/chibios/platform.c +++ b/platforms/chibios/platform.c @@ -19,4 +19,4 @@ void platform_setup(void) { halInit(); chSysInit(); -}
\ No newline at end of file +} diff --git a/platforms/test/platform.c b/platforms/test/platform.c index 8ddceeda8f..3e35b4fe4c 100644 --- a/platforms/test/platform.c +++ b/platforms/test/platform.c @@ -18,4 +18,4 @@ void platform_setup(void) { // do nothing -}
\ No newline at end of file +} diff --git a/quantum/action.c b/quantum/action.c index be85192d25..dd82c9ec99 100644 --- a/quantum/action.c +++ b/quantum/action.c @@ -281,6 +281,9 @@ void process_record(keyrecord_t *record) { if (IS_NOEVENT(record->event)) { return; } +#ifdef FLOW_TAP_TERM + flow_tap_update_last_event(record); +#endif // FLOW_TAP_TERM if (!process_record_quantum(record)) { #ifndef NO_ACTION_ONESHOT @@ -1183,6 +1186,23 @@ bool is_tap_action(action_t action) { return false; } +uint16_t get_tap_keycode(uint16_t keycode) { + switch (keycode) { + case QK_MOD_TAP ... QK_MOD_TAP_MAX: + return QK_MOD_TAP_GET_TAP_KEYCODE(keycode); + case QK_LAYER_TAP ... QK_LAYER_TAP_MAX: + return QK_LAYER_TAP_GET_TAP_KEYCODE(keycode); + case QK_SWAP_HANDS ... QK_SWAP_HANDS_MAX: + // IS_SWAP_HANDS_KEYCODE() tests for the special action keycodes + // like SH_TOGG, SH_TT, ..., which overlap the SH_T(kc) range. + if (!IS_SWAP_HANDS_KEYCODE(keycode)) { + return QK_SWAP_HANDS_GET_TAP_KEYCODE(keycode); + } + break; + } + return keycode; +} + /** \brief Debug print (FIXME: Needs better description) * * FIXME: Needs documentation. diff --git a/quantum/action.h b/quantum/action.h index 7596688f31..7616486c6d 100644 --- a/quantum/action.h +++ b/quantum/action.h @@ -128,6 +128,12 @@ void layer_switch(uint8_t new_layer); bool is_tap_record(keyrecord_t *record); bool is_tap_action(action_t action); +/** + * Given an MT or LT keycode, returns the tap keycode. Otherwise returns the + * original keycode unchanged. + */ +uint16_t get_tap_keycode(uint16_t keycode); + #ifndef NO_ACTION_TAPPING void process_record_tap_hint(keyrecord_t *record); #endif diff --git a/quantum/action_tapping.c b/quantum/action_tapping.c index e42a98554d..b105cd60a9 100644 --- a/quantum/action_tapping.c +++ b/quantum/action_tapping.c @@ -4,7 +4,9 @@ #include "action.h" #include "action_layer.h" #include "action_tapping.h" +#include "action_util.h" #include "keycode.h" +#include "quantum_keycodes.h" #include "timer.h" #ifndef NO_ACTION_TAPPING @@ -49,9 +51,7 @@ __attribute__((weak)) bool get_permissive_hold(uint16_t keycode, keyrecord_t *re } # endif -# if defined(CHORDAL_HOLD) -extern const char chordal_hold_layout[MATRIX_ROWS][MATRIX_COLS] PROGMEM; - +# if defined(CHORDAL_HOLD) || defined(FLOW_TAP_TERM) # define REGISTERED_TAPS_SIZE 8 // Array of tap-hold keys that have been settled as tapped but not yet released. static keypos_t registered_taps[REGISTERED_TAPS_SIZE] = {}; @@ -66,6 +66,14 @@ static void registered_taps_del_index(uint8_t i); /** Logs the registered_taps array for debugging. */ static void debug_registered_taps(void); +static bool is_mt_or_lt(uint16_t keycode) { + return IS_QK_MOD_TAP(keycode) || IS_QK_LAYER_TAP(keycode); +} +# endif // defined(CHORDAL_HOLD) || defined(FLOW_TAP_TERM) + +# if defined(CHORDAL_HOLD) +extern const char chordal_hold_layout[MATRIX_ROWS][MATRIX_COLS] PROGMEM; + /** \brief Finds which queued events should be held according to Chordal Hold. * * In a situation with multiple unsettled tap-hold key presses, scan the queue @@ -82,10 +90,6 @@ static void waiting_buffer_chordal_hold_taps_until(keypos_t key); /** \brief Processes and pops buffered events until the first tap-hold event. */ static void waiting_buffer_process_regular(void); - -static bool is_mt_or_lt(uint16_t keycode) { - return IS_QK_MOD_TAP(keycode) || IS_QK_LAYER_TAP(keycode); -} # endif // CHORDAL_HOLD # ifdef HOLD_ON_OTHER_KEY_PRESS_PER_KEY @@ -98,6 +102,14 @@ __attribute__((weak)) bool get_hold_on_other_key_press(uint16_t keycode, keyreco # include "process_auto_shift.h" # endif +# if defined(FLOW_TAP_TERM) +static uint16_t flow_tap_prev_keycode = KC_NO; +static uint16_t flow_tap_prev_time = 0; +static bool flow_tap_expired = true; + +static bool flow_tap_key_if_within_term(keyrecord_t *record, uint16_t prev_time); +# endif // defined(FLOW_TAP_TERM) + static keyrecord_t tapping_key = {}; static keyrecord_t waiting_buffer[WAITING_BUFFER_SIZE] = {}; static uint8_t waiting_buffer_head = 0; @@ -148,6 +160,12 @@ void action_tapping_process(keyrecord_t record) { } if (IS_EVENT(record.event)) { ac_dprintf("\n"); + } else { +# ifdef FLOW_TAP_TERM + if (!flow_tap_expired && TIMER_DIFF_16(record.event.time, flow_tap_prev_time) >= INT16_MAX / 2) { + flow_tap_expired = true; + } +# endif // FLOW_TAP_TERM } } @@ -205,7 +223,7 @@ void action_tapping_process(keyrecord_t record) { bool process_tapping(keyrecord_t *keyp) { const keyevent_t event = keyp->event; -# if defined(CHORDAL_HOLD) +# if defined(CHORDAL_HOLD) || defined(FLOW_TAP_TERM) if (!event.pressed) { const int8_t i = registered_tap_find(event.key); if (i != -1) { @@ -217,7 +235,7 @@ bool process_tapping(keyrecord_t *keyp) { debug_registered_taps(); } } -# endif // CHORDAL_HOLD +# endif // defined(CHORDAL_HOLD) || defined(FLOW_TAP_TERM) // state machine is in the "reset" state, no tapping key is to be // processed @@ -227,6 +245,13 @@ bool process_tapping(keyrecord_t *keyp) { } else if (event.pressed && is_tap_record(keyp)) { // the currently pressed key is a tapping key, therefore transition // into the "pressed" tapping key state + +# if defined(FLOW_TAP_TERM) + if (flow_tap_key_if_within_term(keyp, flow_tap_prev_time)) { + return true; + } +# endif // defined(FLOW_TAP_TERM) + ac_dprintf("Tapping: Start(Press tap key).\n"); tapping_key = *keyp; process_record_tap_hint(&tapping_key); @@ -263,6 +288,27 @@ bool process_tapping(keyrecord_t *keyp) { // copy tapping state keyp->tap = tapping_key.tap; + +# if defined(FLOW_TAP_TERM) + // Now that tapping_key has settled as tapped, check whether + // Flow Tap applies to following yet-unsettled keys. + uint16_t prev_time = tapping_key.event.time; + for (; waiting_buffer_tail != waiting_buffer_head; waiting_buffer_tail = (waiting_buffer_tail + 1) % WAITING_BUFFER_SIZE) { + keyrecord_t *record = &waiting_buffer[waiting_buffer_tail]; + if (!record->event.pressed) { + break; + } + const int16_t next_time = record->event.time; + if (!is_tap_record(record)) { + process_record(record); + } else if (!flow_tap_key_if_within_term(record, prev_time)) { + break; + } + prev_time = next_time; + } + debug_waiting_buffer(); +# endif // defined(FLOW_TAP_TERM) + // enqueue return false; } @@ -538,6 +584,13 @@ bool process_tapping(keyrecord_t *keyp) { return true; } else if (is_tap_record(keyp)) { // Sequential tap can be interfered with other tap key. +# if defined(FLOW_TAP_TERM) + if (flow_tap_key_if_within_term(keyp, flow_tap_prev_time)) { + tapping_key = (keyrecord_t){0}; + debug_tapping_key(); + return true; + } +# endif // defined(FLOW_TAP_TERM) ac_dprintf("Tapping: Start with interfering other tap.\n"); tapping_key = *keyp; waiting_buffer_scan_tap(); @@ -655,28 +708,7 @@ void waiting_buffer_scan_tap(void) { } } -# ifdef CHORDAL_HOLD -__attribute__((weak)) bool get_chordal_hold(uint16_t tap_hold_keycode, keyrecord_t *tap_hold_record, uint16_t other_keycode, keyrecord_t *other_record) { - return get_chordal_hold_default(tap_hold_record, other_record); -} - -bool get_chordal_hold_default(keyrecord_t *tap_hold_record, keyrecord_t *other_record) { - if (tap_hold_record->event.type != KEY_EVENT || other_record->event.type != KEY_EVENT) { - return true; // Return true on combos or other non-key events. - } - - char tap_hold_hand = chordal_hold_handedness(tap_hold_record->event.key); - if (tap_hold_hand == '*') { - return true; - } - char other_hand = chordal_hold_handedness(other_record->event.key); - return other_hand == '*' || tap_hold_hand != other_hand; -} - -__attribute__((weak)) char chordal_hold_handedness(keypos_t key) { - return (char)pgm_read_byte(&chordal_hold_layout[key.row][key.col]); -} - +# if defined(CHORDAL_HOLD) || defined(FLOW_TAP_TERM) static void registered_taps_add(keypos_t key) { if (num_registered_taps >= REGISTERED_TAPS_SIZE) { ac_dprintf("TAPS OVERFLOW: CLEAR ALL STATES\n"); @@ -714,6 +746,30 @@ static void debug_registered_taps(void) { ac_dprintf("}\n"); } +# endif // defined(CHORDAL_HOLD) || defined(FLOW_TAP_TERM) + +# ifdef CHORDAL_HOLD +__attribute__((weak)) bool get_chordal_hold(uint16_t tap_hold_keycode, keyrecord_t *tap_hold_record, uint16_t other_keycode, keyrecord_t *other_record) { + return get_chordal_hold_default(tap_hold_record, other_record); +} + +bool get_chordal_hold_default(keyrecord_t *tap_hold_record, keyrecord_t *other_record) { + if (tap_hold_record->event.type != KEY_EVENT || other_record->event.type != KEY_EVENT) { + return true; // Return true on combos or other non-key events. + } + + char tap_hold_hand = chordal_hold_handedness(tap_hold_record->event.key); + if (tap_hold_hand == '*') { + return true; + } + char other_hand = chordal_hold_handedness(other_record->event.key); + return other_hand == '*' || tap_hold_hand != other_hand; +} + +__attribute__((weak)) char chordal_hold_handedness(keypos_t key) { + return (char)pgm_read_byte(&chordal_hold_layout[key.row][key.col]); +} + static uint8_t waiting_buffer_find_chordal_hold_tap(void) { keyrecord_t *prev = &tapping_key; uint16_t prev_keycode = get_record_keycode(&tapping_key, false); @@ -761,6 +817,100 @@ static void waiting_buffer_process_regular(void) { } # endif // CHORDAL_HOLD +# ifdef FLOW_TAP_TERM +void flow_tap_update_last_event(keyrecord_t *record) { + const uint16_t keycode = get_record_keycode(record, false); + // Don't update while a tap-hold key is unsettled. + if (record->tap.count == 0 && (waiting_buffer_tail != waiting_buffer_head || (tapping_key.event.pressed && tapping_key.tap.count == 0))) { + return; + } + // Ignore releases of modifiers and held layer switches. + if (!record->event.pressed) { + switch (keycode) { + case MODIFIER_KEYCODE_RANGE: + case QK_MOMENTARY ... QK_MOMENTARY_MAX: + case QK_LAYER_TAP_TOGGLE ... QK_LAYER_TAP_TOGGLE_MAX: +# ifndef NO_ACTION_ONESHOT // Ignore one-shot keys. + case QK_ONE_SHOT_MOD ... QK_ONE_SHOT_MOD_MAX: + case QK_ONE_SHOT_LAYER ... QK_ONE_SHOT_LAYER_MAX: +# endif // NO_ACTION_ONESHOT +# ifdef TRI_LAYER_ENABLE // Ignore Tri Layer keys. + case QK_TRI_LAYER_LOWER: + case QK_TRI_LAYER_UPPER: +# endif // TRI_LAYER_ENABLE + return; + case QK_MODS ... QK_MODS_MAX: + if (QK_MODS_GET_BASIC_KEYCODE(keycode) == KC_NO) { + return; + } + break; + case QK_MOD_TAP ... QK_MOD_TAP_MAX: + case QK_LAYER_TAP ... QK_LAYER_TAP_MAX: + if (record->tap.count == 0) { + return; + } + break; + } + } + + flow_tap_prev_keycode = keycode; + flow_tap_prev_time = record->event.time; + flow_tap_expired = false; +} + +static bool flow_tap_key_if_within_term(keyrecord_t *record, uint16_t prev_time) { + const uint16_t idle_time = TIMER_DIFF_16(record->event.time, prev_time); + if (flow_tap_expired || idle_time >= 500) { + return false; + } + + const uint16_t keycode = get_record_keycode(record, false); + if (is_mt_or_lt(keycode)) { + uint16_t term = get_flow_tap_term(keycode, record, flow_tap_prev_keycode); + if (term > 500) { + term = 500; + } + if (idle_time < term) { + debug_event(record->event); + ac_dprintf(" within flow tap term (%u < %u) considered a tap\n", idle_time, term); + record->tap.count = 1; + registered_taps_add(record->event.key); + debug_registered_taps(); + process_record(record); + return true; + } + } + return false; +} + +// By default, enable Flow Tap for the keys in the main alphas area and Space. +// This should work reasonably even if the layout is remapped on the host to an +// alt layout or international layout (e.g. Dvorak or AZERTY), where these same +// key positions are mostly used for typing letters. +__attribute__((weak)) bool is_flow_tap_key(uint16_t keycode) { + if ((get_mods() & (MOD_MASK_CG | MOD_BIT_LALT)) != 0) { + return false; // Disable Flow Tap on hotkeys. + } + switch (get_tap_keycode(keycode)) { + case KC_SPC: + case KC_A ... KC_Z: + case KC_DOT: + case KC_COMM: + case KC_SCLN: + case KC_SLSH: + return true; + } + return false; +} + +__attribute__((weak)) uint16_t get_flow_tap_term(uint16_t keycode, keyrecord_t *record, uint16_t prev_keycode) { + if (is_flow_tap_key(keycode) && is_flow_tap_key(prev_keycode)) { + return FLOW_TAP_TERM; + } + return 0; +} +# endif // FLOW_TAP_TERM + /** \brief Logs tapping key if ACTION_DEBUG is enabled. */ static void debug_tapping_key(void) { ac_dprintf("TAPPING_KEY="); diff --git a/quantum/action_tapping.h b/quantum/action_tapping.h index c3c7b999ec..0cf4aa1200 100644 --- a/quantum/action_tapping.h +++ b/quantum/action_tapping.h @@ -111,6 +111,66 @@ char chordal_hold_handedness(keypos_t key); extern const char chordal_hold_layout[MATRIX_ROWS][MATRIX_COLS] PROGMEM; #endif +#ifdef FLOW_TAP_TERM +/** + * Callback to specify the keys where Flow Tap is enabled. + * + * Flow Tap is constrained to certain keys by the following rule: this callback + * is called for both the tap-hold key *and* the key press immediately preceding + * it. If the callback returns true for both keycodes, Flow Tap is enabled. + * + * The default implementation of this callback corresponds to + * + * bool is_flow_tap_key(uint16_t keycode) { + * switch (get_tap_keycode(keycode)) { + * case KC_SPC: + * case KC_A ... KC_Z: + * case KC_DOT: + * case KC_COMM: + * case KC_SCLN: + * case KC_SLSH: + * return true; + * } + * return false; + * } + * + * @param keycode Keycode of the key. + * @return Whether to enable Flow Tap for this key. + */ +bool is_flow_tap_key(uint16_t keycode); + +/** + * Callback to customize Flow Tap filtering. + * + * Flow Tap acts only when key events are closer together than this time. + * + * Return a time of 0 to disable filtering. In this way, Flow Tap may be + * disabled for certain tap-hold keys, or when following certain previous keys. + * + * The default implementation of this callback is + * + * uint16_t get_flow_tap_term(uint16_t keycode, keyrecord_t* record, + * uint16_t prev_keycode) { + * if (is_flow_tap_key(keycode) && is_flow_tap_key(prev_keycode)) { + * return g_flow_tap_term; + * } + * return 0; + * } + * + * NOTE: If both `is_flow_tap_key()` and `get_flow_tap_term()` are defined, then + * `get_flow_tap_term()` takes precedence. + * + * @param keycode Keycode of the tap-hold key. + * @param record keyrecord_t of the tap-hold event. + * @param prev_keycode Keycode of the previously pressed key. + * @return Time in milliseconds. + */ +uint16_t get_flow_tap_term(uint16_t keycode, keyrecord_t *record, uint16_t prev_keycode); + +/** Updates the Flow Tap last key and timer. */ +void flow_tap_update_last_event(keyrecord_t *record); +#endif // FLOW_TAP_TERM + #ifdef DYNAMIC_TAPPING_TERM_ENABLE extern uint16_t g_tapping_term; #endif diff --git a/quantum/action_util.c b/quantum/action_util.c index c0dc4f3822..9fe17f2124 100644 --- a/quantum/action_util.c +++ b/quantum/action_util.c @@ -220,7 +220,7 @@ bool is_oneshot_layer_active(void) { void oneshot_set(bool active) { if (keymap_config.oneshot_enable != active) { keymap_config.oneshot_enable = active; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); clear_oneshot_layer_state(ONESHOT_OTHER_KEY_PRESSED); dprintf("Oneshot: active: %d\n", active); } diff --git a/quantum/audio/audio.c b/quantum/audio/audio.c index 2cc3c2d661..4e223f0c9a 100644 --- a/quantum/audio/audio.c +++ b/quantum/audio/audio.c @@ -149,14 +149,14 @@ void audio_driver_start(void) { } void eeconfig_update_audio_current(void) { - eeconfig_update_audio(audio_config.raw); + eeconfig_update_audio(&audio_config); } void eeconfig_update_audio_default(void) { audio_config.valid = true; audio_config.enable = AUDIO_DEFAULT_ON; audio_config.clicky_enable = AUDIO_DEFAULT_CLICKY_ON; - eeconfig_update_audio(audio_config.raw); + eeconfig_update_audio(&audio_config); } void audio_init(void) { @@ -164,7 +164,7 @@ void audio_init(void) { return; } - audio_config.raw = eeconfig_read_audio(); + eeconfig_read_audio(&audio_config); if (!audio_config.valid) { dprintf("audio_init audio_config.valid = 0. Write default values to EEPROM.\n"); eeconfig_update_audio_default(); @@ -196,7 +196,7 @@ void audio_toggle(void) { stop_all_notes(); } audio_config.enable ^= 1; - eeconfig_update_audio(audio_config.raw); + eeconfig_update_audio(&audio_config); if (audio_config.enable) { audio_on_user(); } else { @@ -206,7 +206,7 @@ void audio_toggle(void) { void audio_on(void) { audio_config.enable = 1; - eeconfig_update_audio(audio_config.raw); + eeconfig_update_audio(&audio_config); audio_on_user(); PLAY_SONG(audio_on_song); } @@ -217,7 +217,7 @@ void audio_off(void) { wait_ms(100); audio_stop_all(); audio_config.enable = 0; - eeconfig_update_audio(audio_config.raw); + eeconfig_update_audio(&audio_config); } bool audio_is_on(void) { diff --git a/quantum/audio/audio.h b/quantum/audio/audio.h index 054331d6f3..93dc6f62b1 100644 --- a/quantum/audio/audio.h +++ b/quantum/audio/audio.h @@ -28,7 +28,7 @@ # include "audio_dac.h" #endif -typedef union { +typedef union audio_config_t { uint8_t raw; struct { bool enable : 1; diff --git a/quantum/backlight/backlight.c b/quantum/backlight/backlight.c index eb64dd71e8..a7d2a45a51 100644 --- a/quantum/backlight/backlight.c +++ b/quantum/backlight/backlight.c @@ -16,7 +16,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #include "backlight.h" -#include "eeprom.h" #include "eeconfig.h" #include "debug.h" @@ -55,7 +54,7 @@ static void backlight_check_config(void) { * FIXME: needs doc */ void backlight_init(void) { - backlight_config.raw = eeconfig_read_backlight(); + eeconfig_read_backlight(&backlight_config); if (!backlight_config.valid) { dprintf("backlight_init backlight_config.valid = 0. Write default values to EEPROM.\n"); eeconfig_update_backlight_default(); @@ -74,7 +73,7 @@ void backlight_increase(void) { backlight_config.level++; } backlight_config.enable = 1; - eeconfig_update_backlight(backlight_config.raw); + eeconfig_update_backlight(&backlight_config); dprintf("backlight increase: %u\n", backlight_config.level); backlight_set(backlight_config.level); } @@ -87,7 +86,7 @@ void backlight_decrease(void) { if (backlight_config.level > 0) { backlight_config.level--; backlight_config.enable = !!backlight_config.level; - eeconfig_update_backlight(backlight_config.raw); + eeconfig_update_backlight(&backlight_config); } dprintf("backlight decrease: %u\n", backlight_config.level); backlight_set(backlight_config.level); @@ -116,7 +115,7 @@ void backlight_enable(void) { backlight_config.enable = true; if (backlight_config.raw == 1) // enabled but level == 0 backlight_config.level = 1; - eeconfig_update_backlight(backlight_config.raw); + eeconfig_update_backlight(&backlight_config); dprintf("backlight enable\n"); backlight_set(backlight_config.level); } @@ -129,7 +128,7 @@ void backlight_disable(void) { if (!backlight_config.enable) return; // do nothing if backlight is already off backlight_config.enable = false; - eeconfig_update_backlight(backlight_config.raw); + eeconfig_update_backlight(&backlight_config); dprintf("backlight disable\n"); backlight_set(0); } @@ -152,7 +151,7 @@ void backlight_step(void) { backlight_config.level = 0; } backlight_config.enable = !!backlight_config.level; - eeconfig_update_backlight(backlight_config.raw); + eeconfig_update_backlight(&backlight_config); dprintf("backlight step: %u\n", backlight_config.level); backlight_set(backlight_config.level); } @@ -173,19 +172,11 @@ void backlight_level_noeeprom(uint8_t level) { */ void backlight_level(uint8_t level) { backlight_level_noeeprom(level); - eeconfig_update_backlight(backlight_config.raw); -} - -uint8_t eeconfig_read_backlight(void) { - return eeprom_read_byte(EECONFIG_BACKLIGHT); -} - -void eeconfig_update_backlight(uint8_t val) { - eeprom_update_byte(EECONFIG_BACKLIGHT, val); + eeconfig_update_backlight(&backlight_config); } void eeconfig_update_backlight_current(void) { - eeconfig_update_backlight(backlight_config.raw); + eeconfig_update_backlight(&backlight_config); } void eeconfig_update_backlight_default(void) { @@ -193,7 +184,7 @@ void eeconfig_update_backlight_default(void) { backlight_config.enable = BACKLIGHT_DEFAULT_ON; backlight_config.breathing = BACKLIGHT_DEFAULT_BREATHING; backlight_config.level = BACKLIGHT_DEFAULT_LEVEL; - eeconfig_update_backlight(backlight_config.raw); + eeconfig_update_backlight(&backlight_config); } /** \brief Get backlight level @@ -226,7 +217,7 @@ void backlight_enable_breathing(void) { if (backlight_config.breathing) return; // do nothing if breathing is already on backlight_config.breathing = true; - eeconfig_update_backlight(backlight_config.raw); + eeconfig_update_backlight(&backlight_config); dprintf("backlight breathing enable\n"); breathing_enable(); } @@ -239,7 +230,7 @@ void backlight_disable_breathing(void) { if (!backlight_config.breathing) return; // do nothing if breathing is already off backlight_config.breathing = false; - eeconfig_update_backlight(backlight_config.raw); + eeconfig_update_backlight(&backlight_config); dprintf("backlight breathing disable\n"); breathing_disable(); } diff --git a/quantum/backlight/backlight.h b/quantum/backlight/backlight.h index c34fb5858d..561c7f8a94 100644 --- a/quantum/backlight/backlight.h +++ b/quantum/backlight/backlight.h @@ -34,7 +34,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. # define BREATHING_PERIOD 6 #endif -typedef union { +typedef union backlight_config_t { uint8_t raw; struct { bool enable : 1; @@ -58,10 +58,8 @@ void backlight_level_noeeprom(uint8_t level); void backlight_level(uint8_t level); uint8_t get_backlight_level(void); -uint8_t eeconfig_read_backlight(void); -void eeconfig_update_backlight(uint8_t val); -void eeconfig_update_backlight_current(void); -void eeconfig_update_backlight_default(void); +void eeconfig_update_backlight_current(void); +void eeconfig_update_backlight_default(void); // implementation specific void backlight_init_ports(void); diff --git a/quantum/command.c b/quantum/command.c index 024d96917d..96b637f842 100644 --- a/quantum/command.c +++ b/quantum/command.c @@ -246,7 +246,7 @@ static void print_eeconfig(void) { xprintf("eeconfig:\ndefault_layer: %u\n", eeconfig_read_default_layer()); debug_config_t dc; - dc.raw = eeconfig_read_debug(); + eeconfig_read_debug(&dc); xprintf(/* clang-format off */ "debug_config.raw: %02X\n" @@ -263,7 +263,7 @@ static void print_eeconfig(void) { ); /* clang-format on */ keymap_config_t kc; - kc.raw = eeconfig_read_keymap(); + eeconfig_read_keymap(&kc); xprintf(/* clang-format off */ "keymap_config.raw: %02X\n" @@ -296,7 +296,7 @@ static void print_eeconfig(void) { # ifdef BACKLIGHT_ENABLE backlight_config_t bc; - bc.raw = eeconfig_read_backlight(); + eeconfig_read_backlight(&bc); xprintf(/* clang-format off */ "backlight_config" diff --git a/quantum/connection/connection.c b/quantum/connection/connection.c new file mode 100644 index 0000000000..c7f3c4b424 --- /dev/null +++ b/quantum/connection/connection.c @@ -0,0 +1,147 @@ +// Copyright 2025 QMK +// SPDX-License-Identifier: GPL-2.0-or-later +#include "connection.h" +#include "eeconfig.h" +#include "usb_util.h" +#include "util.h" + +// ======== DEPRECATED DEFINES - DO NOT USE ======== +#ifdef OUTPUT_DEFAULT +# undef CONNECTION_HOST_DEFAULT +# define CONNECTION_HOST_DEFAULT OUTPUT_DEFAULT +#endif + +__attribute__((weak)) void set_output_user(uint8_t output) {} +// ======== + +#ifdef BLUETOOTH_ENABLE +# ifdef BLUETOOTH_BLUEFRUIT_LE +# include "bluefruit_le.h" +# define bluetooth_is_connected() bluefruit_le_is_connected() +# else +// TODO: drivers should check if BT is connected here +# define bluetooth_is_connected() true +# endif +#endif + +#define CONNECTION_HOST_INVALID 0xFF + +#ifndef CONNECTION_HOST_DEFAULT +# define CONNECTION_HOST_DEFAULT CONNECTION_HOST_AUTO +#endif + +static const connection_host_t host_candidates[] = { + CONNECTION_HOST_AUTO, + CONNECTION_HOST_USB, +#ifdef BLUETOOTH_ENABLE + CONNECTION_HOST_BLUETOOTH, +#endif +#if 0 + CONNECTION_HOST_2P4GHZ, +#endif +}; + +#define HOST_CANDIDATES_COUNT ARRAY_SIZE(host_candidates) + +static connection_config_t config = {.desired_host = CONNECTION_HOST_INVALID}; + +void eeconfig_update_connection_default(void) { + config.desired_host = CONNECTION_HOST_DEFAULT; + + eeconfig_update_connection(&config); +} + +void connection_init(void) { + eeconfig_read_connection(&config); + if (config.desired_host == CONNECTION_HOST_INVALID) { + eeconfig_update_connection_default(); + } +} + +__attribute__((weak)) void connection_host_changed_user(connection_host_t host) {} +__attribute__((weak)) void connection_host_changed_kb(connection_host_t host) {} + +static void handle_host_changed(void) { + connection_host_changed_user(config.desired_host); + connection_host_changed_kb(config.desired_host); + + // TODO: Remove deprecated callback + set_output_user(config.desired_host); +} + +void connection_set_host_noeeprom(connection_host_t host) { + if (config.desired_host == host) { + return; + } + + config.desired_host = host; + + handle_host_changed(); +} + +void connection_set_host(connection_host_t host) { + connection_set_host_noeeprom(host); + + eeconfig_update_connection(&config); +} + +void connection_next_host_noeeprom(void) { + uint8_t next = 0; + for (uint8_t i = 0; i < HOST_CANDIDATES_COUNT; i++) { + if (host_candidates[i] == config.desired_host) { + next = i == HOST_CANDIDATES_COUNT - 1 ? 0 : i + 1; + break; + } + } + + connection_set_host_noeeprom(host_candidates[next]); +} + +void connection_next_host(void) { + connection_next_host_noeeprom(); + + eeconfig_update_connection(&config); +} + +void connection_prev_host_noeeprom(void) { + uint8_t next = 0; + for (uint8_t i = 0; i < HOST_CANDIDATES_COUNT; i++) { + if (host_candidates[i] == config.desired_host) { + next = i == 0 ? HOST_CANDIDATES_COUNT - 1 : i - 1; + break; + } + } + + connection_set_host_noeeprom(host_candidates[next]); +} + +void connection_prev_host(void) { + connection_prev_host_noeeprom(); + + eeconfig_update_connection(&config); +} + +connection_host_t connection_get_host_raw(void) { + return config.desired_host; +} + +connection_host_t connection_auto_detect_host(void) { + if (usb_connected_state()) { + return CONNECTION_HOST_USB; + } + +#ifdef BLUETOOTH_ENABLE + if (bluetooth_is_connected()) { + return CONNECTION_HOST_BLUETOOTH; + } +#endif + + return CONNECTION_HOST_NONE; +} + +connection_host_t connection_get_host(void) { + if (config.desired_host == CONNECTION_HOST_AUTO) { + return connection_auto_detect_host(); + } + return config.desired_host; +} diff --git a/quantum/connection/connection.h b/quantum/connection/connection.h new file mode 100644 index 0000000000..e403141fae --- /dev/null +++ b/quantum/connection/connection.h @@ -0,0 +1,110 @@ +// Copyright 2025 QMK +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include <stdint.h> +#include "util.h" + +/** + * \enum connection_host_t + * + * An enumeration of the possible hosts. + */ +typedef enum connection_host_t { + CONNECTION_HOST_AUTO, + + CONNECTION_HOST_NONE, + CONNECTION_HOST_USB, + CONNECTION_HOST_BLUETOOTH, + CONNECTION_HOST_2P4GHZ +} connection_host_t; + +/** + * \union connection_config_t + * + * Configuration structure for the connection subsystem. + */ +typedef union connection_config_t { + uint8_t raw; + connection_host_t desired_host : 8; +} PACKED connection_config_t; + +_Static_assert(sizeof(connection_config_t) == sizeof(uint8_t), "Connection EECONFIG out of spec."); + +/** + * \brief Initialize the subsystem. + * + * This function must be called only once, before any of the below functions can be called. + */ +void connection_init(void); + +/** + * \brief Get currently configured host. Does not resolve 'CONNECTION_HOST_AUTO'. + * + * \return 'connection_host_t' of the configured host. + */ +connection_host_t connection_get_host_raw(void); + +/** + * \brief Get current active host. + * + * \return 'connection_host_t' of the configured host. + */ +connection_host_t connection_auto_detect_host(void); + +/** + * \brief Get currently configured host. Resolves 'CONNECTION_HOST_AUTO' using 'connection_auto_detect_host()'. + * + * \return 'connection_host_t' of the configured host. + */ +connection_host_t connection_get_host(void); + +/** + * \brief Get current host. New state is not written to EEPROM. + * + * \param host The host to configure. + */ +void connection_set_host_noeeprom(connection_host_t host); + +/** + * \brief Get current host. + * + * \param host The host to configure. + */ +void connection_set_host(connection_host_t host); + +/** + * \brief Move to the next potential host. New state is not written to EEPROM. + * + */ +void connection_next_host_noeeprom(void); + +/** + * \brief Move to the next potential host. + * + */ +void connection_next_host(void); + +/** + * \brief Move to the previous potential host. New state is not written to EEPROM. + * + */ +void connection_prev_host_noeeprom(void); + +/** + * \brief Move to the previous potential host. + * + */ +void connection_prev_host(void); + +/** + * \brief user hook called when changing configured host + * + */ +void connection_host_changed_user(connection_host_t host); + +/** + * \brief keyboard hook called when changing configured host + * + */ +void connection_host_changed_kb(connection_host_t host); diff --git a/quantum/dynamic_keymap.c b/quantum/dynamic_keymap.c index beb7f9d18f..59027fb694 100644 --- a/quantum/dynamic_keymap.c +++ b/quantum/dynamic_keymap.c @@ -1,4 +1,5 @@ /* Copyright 2017 Jason Williams (Wilba) + * Copyright 2024-2025 Nick Brassel (@tzarc) * * 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 @@ -17,18 +18,9 @@ #include "dynamic_keymap.h" #include "keymap_introspection.h" #include "action.h" -#include "eeprom.h" -#include "progmem.h" #include "send_string.h" #include "keycodes.h" - -#ifdef VIA_ENABLE -# include "via.h" -# define DYNAMIC_KEYMAP_EEPROM_START (VIA_EEPROM_CONFIG_END) -#else -# include "eeconfig.h" -# define DYNAMIC_KEYMAP_EEPROM_START (EECONFIG_SIZE) -#endif +#include "nvm_dynamic_keymap.h" #ifdef ENCODER_ENABLE # include "encoder.h" @@ -36,67 +28,6 @@ # define NUM_ENCODERS 0 #endif -#ifndef DYNAMIC_KEYMAP_LAYER_COUNT -# define DYNAMIC_KEYMAP_LAYER_COUNT 4 -#endif - -#ifndef DYNAMIC_KEYMAP_MACRO_COUNT -# define DYNAMIC_KEYMAP_MACRO_COUNT 16 -#endif - -#ifndef TOTAL_EEPROM_BYTE_COUNT -# error Unknown total EEPROM size. Cannot derive maximum for dynamic keymaps. -#endif - -#ifndef DYNAMIC_KEYMAP_EEPROM_MAX_ADDR -# define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR (TOTAL_EEPROM_BYTE_COUNT - 1) -#endif - -#if DYNAMIC_KEYMAP_EEPROM_MAX_ADDR > (TOTAL_EEPROM_BYTE_COUNT - 1) -# pragma message STR(DYNAMIC_KEYMAP_EEPROM_MAX_ADDR) " > " STR((TOTAL_EEPROM_BYTE_COUNT - 1)) -# error DYNAMIC_KEYMAP_EEPROM_MAX_ADDR is configured to use more space than what is available for the selected EEPROM driver -#endif - -// Due to usage of uint16_t check for max 65535 -#if DYNAMIC_KEYMAP_EEPROM_MAX_ADDR > 65535 -# pragma message STR(DYNAMIC_KEYMAP_EEPROM_MAX_ADDR) " > 65535" -# error DYNAMIC_KEYMAP_EEPROM_MAX_ADDR must be less than 65536 -#endif - -// If DYNAMIC_KEYMAP_EEPROM_ADDR not explicitly defined in config.h, -#ifndef DYNAMIC_KEYMAP_EEPROM_ADDR -# define DYNAMIC_KEYMAP_EEPROM_ADDR DYNAMIC_KEYMAP_EEPROM_START -#endif - -// Dynamic encoders starts after dynamic keymaps -#ifndef DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR -# define DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR (DYNAMIC_KEYMAP_EEPROM_ADDR + (DYNAMIC_KEYMAP_LAYER_COUNT * MATRIX_ROWS * MATRIX_COLS * 2)) -#endif - -// Dynamic macro starts after dynamic encoders, but only when using ENCODER_MAP -#ifdef ENCODER_MAP_ENABLE -# ifndef DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR -# define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR (DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR + (DYNAMIC_KEYMAP_LAYER_COUNT * NUM_ENCODERS * 2 * 2)) -# endif // DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR -#else // ENCODER_MAP_ENABLE -# ifndef DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR -# define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR (DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR) -# endif // DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR -#endif // ENCODER_MAP_ENABLE - -// Sanity check that dynamic keymaps fit in available EEPROM -// If there's not 100 bytes available for macros, then something is wrong. -// The keyboard should override DYNAMIC_KEYMAP_LAYER_COUNT to reduce it, -// or DYNAMIC_KEYMAP_EEPROM_MAX_ADDR to increase it, *only if* the microcontroller has -// more than the default. -_Static_assert((DYNAMIC_KEYMAP_EEPROM_MAX_ADDR) - (DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR) >= 100, "Dynamic keymaps are configured to use more EEPROM than is available."); - -// Dynamic macros are stored after the keymaps and use what is available -// up to and including DYNAMIC_KEYMAP_EEPROM_MAX_ADDR. -#ifndef DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE -# define DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE (DYNAMIC_KEYMAP_EEPROM_MAX_ADDR - DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR + 1) -#endif - #ifndef DYNAMIC_KEYMAP_MACRO_DELAY # define DYNAMIC_KEYMAP_MACRO_DELAY TAP_CODE_DELAY #endif @@ -105,52 +36,28 @@ uint8_t dynamic_keymap_get_layer_count(void) { return DYNAMIC_KEYMAP_LAYER_COUNT; } -void *dynamic_keymap_key_to_eeprom_address(uint8_t layer, uint8_t row, uint8_t column) { - // TODO: optimize this with some left shifts - return ((void *)DYNAMIC_KEYMAP_EEPROM_ADDR) + (layer * MATRIX_ROWS * MATRIX_COLS * 2) + (row * MATRIX_COLS * 2) + (column * 2); -} - uint16_t dynamic_keymap_get_keycode(uint8_t layer, uint8_t row, uint8_t column) { - if (layer >= DYNAMIC_KEYMAP_LAYER_COUNT || row >= MATRIX_ROWS || column >= MATRIX_COLS) return KC_NO; - void *address = dynamic_keymap_key_to_eeprom_address(layer, row, column); - // Big endian, so we can read/write EEPROM directly from host if we want - uint16_t keycode = eeprom_read_byte(address) << 8; - keycode |= eeprom_read_byte(address + 1); - return keycode; + return nvm_dynamic_keymap_read_keycode(layer, row, column); } void dynamic_keymap_set_keycode(uint8_t layer, uint8_t row, uint8_t column, uint16_t keycode) { - if (layer >= DYNAMIC_KEYMAP_LAYER_COUNT || row >= MATRIX_ROWS || column >= MATRIX_COLS) return; - void *address = dynamic_keymap_key_to_eeprom_address(layer, row, column); - // Big endian, so we can read/write EEPROM directly from host if we want - eeprom_update_byte(address, (uint8_t)(keycode >> 8)); - eeprom_update_byte(address + 1, (uint8_t)(keycode & 0xFF)); + nvm_dynamic_keymap_update_keycode(layer, row, column, keycode); } #ifdef ENCODER_MAP_ENABLE -void *dynamic_keymap_encoder_to_eeprom_address(uint8_t layer, uint8_t encoder_id) { - return ((void *)DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR) + (layer * NUM_ENCODERS * 2 * 2) + (encoder_id * 2 * 2); -} - uint16_t dynamic_keymap_get_encoder(uint8_t layer, uint8_t encoder_id, bool clockwise) { - if (layer >= DYNAMIC_KEYMAP_LAYER_COUNT || encoder_id >= NUM_ENCODERS) return KC_NO; - void *address = dynamic_keymap_encoder_to_eeprom_address(layer, encoder_id); - // Big endian, so we can read/write EEPROM directly from host if we want - uint16_t keycode = ((uint16_t)eeprom_read_byte(address + (clockwise ? 0 : 2))) << 8; - keycode |= eeprom_read_byte(address + (clockwise ? 0 : 2) + 1); - return keycode; + return nvm_dynamic_keymap_read_encoder(layer, encoder_id, clockwise); } void dynamic_keymap_set_encoder(uint8_t layer, uint8_t encoder_id, bool clockwise, uint16_t keycode) { - if (layer >= DYNAMIC_KEYMAP_LAYER_COUNT || encoder_id >= NUM_ENCODERS) return; - void *address = dynamic_keymap_encoder_to_eeprom_address(layer, encoder_id); - // Big endian, so we can read/write EEPROM directly from host if we want - eeprom_update_byte(address + (clockwise ? 0 : 2), (uint8_t)(keycode >> 8)); - eeprom_update_byte(address + (clockwise ? 0 : 2) + 1, (uint8_t)(keycode & 0xFF)); + nvm_dynamic_keymap_update_encoder(layer, encoder_id, clockwise, keycode); } #endif // ENCODER_MAP_ENABLE void dynamic_keymap_reset(void) { + // Erase the keymaps, if necessary. + nvm_dynamic_keymap_erase(); + // Reset the keymaps in EEPROM to what is in flash. for (int layer = 0; layer < DYNAMIC_KEYMAP_LAYER_COUNT; layer++) { for (int row = 0; row < MATRIX_ROWS; row++) { @@ -168,31 +75,11 @@ void dynamic_keymap_reset(void) { } void dynamic_keymap_get_buffer(uint16_t offset, uint16_t size, uint8_t *data) { - uint16_t dynamic_keymap_eeprom_size = DYNAMIC_KEYMAP_LAYER_COUNT * MATRIX_ROWS * MATRIX_COLS * 2; - void * source = (void *)(DYNAMIC_KEYMAP_EEPROM_ADDR + offset); - uint8_t *target = data; - for (uint16_t i = 0; i < size; i++) { - if (offset + i < dynamic_keymap_eeprom_size) { - *target = eeprom_read_byte(source); - } else { - *target = 0x00; - } - source++; - target++; - } + nvm_dynamic_keymap_read_buffer(offset, size, data); } void dynamic_keymap_set_buffer(uint16_t offset, uint16_t size, uint8_t *data) { - uint16_t dynamic_keymap_eeprom_size = DYNAMIC_KEYMAP_LAYER_COUNT * MATRIX_ROWS * MATRIX_COLS * 2; - void * target = (void *)(DYNAMIC_KEYMAP_EEPROM_ADDR + offset); - uint8_t *source = data; - for (uint16_t i = 0; i < size; i++) { - if (offset + i < dynamic_keymap_eeprom_size) { - eeprom_update_byte(target, *source); - } - source++; - target++; - } + nvm_dynamic_keymap_update_buffer(offset, size, data); } uint16_t keycode_at_keymap_location(uint8_t layer_num, uint8_t row, uint8_t column) { @@ -216,53 +103,38 @@ uint8_t dynamic_keymap_macro_get_count(void) { } uint16_t dynamic_keymap_macro_get_buffer_size(void) { - return DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE; + return (uint16_t)nvm_dynamic_keymap_macro_size(); } void dynamic_keymap_macro_get_buffer(uint16_t offset, uint16_t size, uint8_t *data) { - void * source = (void *)(DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR + offset); - uint8_t *target = data; - for (uint16_t i = 0; i < size; i++) { - if (offset + i < DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE) { - *target = eeprom_read_byte(source); - } else { - *target = 0x00; - } - source++; - target++; - } + nvm_dynamic_keymap_macro_read_buffer(offset, size, data); } void dynamic_keymap_macro_set_buffer(uint16_t offset, uint16_t size, uint8_t *data) { - void * target = (void *)(DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR + offset); - uint8_t *source = data; - for (uint16_t i = 0; i < size; i++) { - if (offset + i < DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE) { - eeprom_update_byte(target, *source); - } - source++; - target++; - } + nvm_dynamic_keymap_macro_update_buffer(offset, size, data); } -typedef struct send_string_eeprom_state_t { - const uint8_t *ptr; -} send_string_eeprom_state_t; +static uint8_t dynamic_keymap_read_byte(uint32_t offset) { + uint8_t d; + nvm_dynamic_keymap_macro_read_buffer(offset, 1, &d); + return d; +} -char send_string_get_next_eeprom(void *arg) { - send_string_eeprom_state_t *state = (send_string_eeprom_state_t *)arg; - char ret = eeprom_read_byte(state->ptr); - state->ptr++; +typedef struct send_string_nvm_state_t { + uint32_t offset; +} send_string_nvm_state_t; + +char send_string_get_next_nvm(void *arg) { + send_string_nvm_state_t *state = (send_string_nvm_state_t *)arg; + char ret = dynamic_keymap_read_byte(state->offset); + state->offset++; return ret; } void dynamic_keymap_macro_reset(void) { - void *p = (void *)(DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR); - void *end = (void *)(DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR + DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE); - while (p != end) { - eeprom_update_byte(p, 0); - ++p; - } + // Erase the macros, if necessary. + nvm_dynamic_keymap_macro_erase(); + nvm_dynamic_keymap_macro_reset(); } void dynamic_keymap_macro_send(uint8_t id) { @@ -274,27 +146,26 @@ void dynamic_keymap_macro_send(uint8_t id) { // If it's not zero, then we are in the middle // of buffer writing, possibly an aborted buffer // write. So do nothing. - void *p = (void *)(DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR + DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE - 1); - if (eeprom_read_byte(p) != 0) { + if (dynamic_keymap_read_byte(nvm_dynamic_keymap_macro_size() - 1) != 0) { return; } // Skip N null characters // p will then point to the Nth macro - p = (void *)(DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR); - void *end = (void *)(DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR + DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE); + uint32_t offset = 0; + uint32_t end = nvm_dynamic_keymap_macro_size(); while (id > 0) { // If we are past the end of the buffer, then there is // no Nth macro in the buffer. - if (p == end) { + if (offset == end) { return; } - if (eeprom_read_byte(p) == 0) { + if (dynamic_keymap_read_byte(offset) == 0) { --id; } - ++p; + ++offset; } - send_string_eeprom_state_t state = {p}; - send_string_with_delay_impl(send_string_get_next_eeprom, &state, DYNAMIC_KEYMAP_MACRO_DELAY); + send_string_nvm_state_t state = {.offset = 0}; + send_string_with_delay_impl(send_string_get_next_nvm, &state, DYNAMIC_KEYMAP_MACRO_DELAY); } diff --git a/quantum/dynamic_keymap.h b/quantum/dynamic_keymap.h index 806342efa3..f1d8077b12 100644 --- a/quantum/dynamic_keymap.h +++ b/quantum/dynamic_keymap.h @@ -18,8 +18,15 @@ #include <stdint.h> #include <stdbool.h> +#ifndef DYNAMIC_KEYMAP_LAYER_COUNT +# define DYNAMIC_KEYMAP_LAYER_COUNT 4 +#endif + +#ifndef DYNAMIC_KEYMAP_MACRO_COUNT +# define DYNAMIC_KEYMAP_MACRO_COUNT 16 +#endif + uint8_t dynamic_keymap_get_layer_count(void); -void * dynamic_keymap_key_to_eeprom_address(uint8_t layer, uint8_t row, uint8_t column); uint16_t dynamic_keymap_get_keycode(uint8_t layer, uint8_t row, uint8_t column); void dynamic_keymap_set_keycode(uint8_t layer, uint8_t row, uint8_t column, uint16_t keycode); #ifdef ENCODER_MAP_ENABLE diff --git a/quantum/eeconfig.c b/quantum/eeconfig.c index e27f604f12..1e8cfd758a 100644 --- a/quantum/eeconfig.c +++ b/quantum/eeconfig.c @@ -1,355 +1,355 @@ #include <string.h> #include <stdint.h> #include <stdbool.h> -#include "eeprom.h" +#include "debug.h" #include "eeconfig.h" +#include "action_layer.h" +#include "nvm_eeconfig.h" +#include "keycode_config.h" -#if defined(EEPROM_DRIVER) -# include "eeprom_driver.h" -#endif +#ifdef BACKLIGHT_ENABLE +# include "backlight.h" +#endif // BACKLIGHT_ENABLE + +#ifdef AUDIO_ENABLE +# include "audio.h" +#endif // AUDIO_ENABLE + +#ifdef RGBLIGHT_ENABLE +# include "rgblight.h" +#endif // RGBLIGHT_ENABLE + +#ifdef RGB_MATRIX_ENABLE +# include "rgb_matrix_types.h" +#endif // RGB_MATRIX_ENABLE + +#ifdef LED_MATRIX_ENABLE +# include "led_matrix_types.h" +#endif // LED_MATRIX_ENABLE -#if defined(HAPTIC_ENABLE) +#ifdef UNICODE_COMMON_ENABLE +# include "unicode.h" +#endif // UNICODE_COMMON_ENABLE + +#ifdef HAPTIC_ENABLE # include "haptic.h" -#endif +#endif // HAPTIC_ENABLE -#if defined(VIA_ENABLE) +#ifdef CONNECTION_ENABLE +# include "connection.h" +#endif // CONNECTION_ENABLE + +#ifdef VIA_ENABLE bool via_eeprom_is_valid(void); void via_eeprom_set_valid(bool valid); void eeconfig_init_via(void); -#endif - -_Static_assert((intptr_t)EECONFIG_HANDEDNESS == 14, "EEPROM handedness offset is incorrect"); +#else +void dynamic_keymap_reset(void); +#endif // VIA_ENABLE -/** \brief eeconfig enable - * - * FIXME: needs doc - */ __attribute__((weak)) void eeconfig_init_user(void) { #if (EECONFIG_USER_DATA_SIZE) == 0 // Reset user EEPROM value to blank, rather than to a set value eeconfig_update_user(0); -#endif +#endif // (EECONFIG_USER_DATA_SIZE) == 0 } __attribute__((weak)) void eeconfig_init_kb(void) { #if (EECONFIG_KB_DATA_SIZE) == 0 // Reset Keyboard EEPROM value to blank, rather than to a set value eeconfig_update_kb(0); -#endif +#endif // (EECONFIG_KB_DATA_SIZE) == 0 eeconfig_init_user(); } -/* - * FIXME: needs doc - */ void eeconfig_init_quantum(void) { -#if defined(EEPROM_DRIVER) - eeprom_driver_format(false); -#endif + nvm_eeconfig_erase(); + + eeconfig_enable(); + + debug_config_t debug_config = {0}; + eeconfig_update_debug(&debug_config); - eeprom_update_word(EECONFIG_MAGIC, EECONFIG_MAGIC_NUMBER); - eeprom_update_byte(EECONFIG_DEBUG, 0); default_layer_state = (layer_state_t)1 << 0; eeconfig_update_default_layer(default_layer_state); - // Enable oneshot and autocorrect by default: 0b0001 0100 0000 0000 - eeprom_update_word(EECONFIG_KEYMAP, 0x1400); - eeprom_update_byte(EECONFIG_BACKLIGHT, 0); - eeprom_update_byte(EECONFIG_AUDIO, 0); - eeprom_update_dword(EECONFIG_RGBLIGHT, 0); - eeprom_update_byte(EECONFIG_RGBLIGHT_EXTENDED, 0); - eeprom_update_byte(EECONFIG_UNICODEMODE, 0); - eeprom_update_byte(EECONFIG_STENOMODE, 0); - eeprom_write_qword(EECONFIG_RGB_MATRIX, 0); - eeprom_update_dword(EECONFIG_HAPTIC, 0); -#if defined(HAPTIC_ENABLE) - haptic_reset(); + + keymap_config_t keymap_config = { + .swap_control_capslock = false, + .capslock_to_control = false, + .swap_lalt_lgui = false, + .swap_ralt_rgui = false, + .no_gui = false, + .swap_grave_esc = false, + .swap_backslash_backspace = false, + .nkro = false, + .swap_lctl_lgui = false, + .swap_rctl_rgui = false, + .oneshot_enable = true, // Enable oneshot by default + .swap_escape_capslock = false, + .autocorrect_enable = true, // Enable autocorrect by default + }; + eeconfig_update_keymap(&keymap_config); + +#ifdef BACKLIGHT_ENABLE + backlight_config_t backlight_config = {0}; + eeconfig_update_backlight(&backlight_config); +#endif // BACKLIGHT_ENABLE + +#ifdef AUDIO_ENABLE + audio_config_t audio_config = {0}; + eeconfig_update_audio(&audio_config); +#endif // AUDIO_ENABLE + +#ifdef RGBLIGHT_ENABLE + extern void eeconfig_update_rgblight_default(void); + eeconfig_update_rgblight_default(); +#endif // RGBLIGHT_ENABLE + +#ifdef UNICODE_COMMON_ENABLE + unicode_config_t unicode_config = {0}; + eeconfig_update_unicode_mode(&unicode_config); +#endif // UNICODE_COMMON_ENABLE + +#ifdef STENO_ENABLE + eeconfig_update_steno_mode(0); +#endif // STENO_ENABLE + +#ifdef RGB_MATRIX_ENABLE + extern void eeconfig_update_rgb_matrix_default(void); + eeconfig_update_rgb_matrix_default(); #endif +#ifdef LED_MATRIX_ENABLE + extern void eeconfig_update_led_matrix_default(void); + eeconfig_update_led_matrix_default(); +#endif // LED_MATRIX_ENABLE + +#ifdef HAPTIC_ENABLE + haptic_config_t haptic_config = {0}; + eeconfig_update_haptic(&haptic_config); + haptic_reset(); +#endif // HAPTIC_ENABLE + +#ifdef CONNECTION_ENABLE + extern void eeconfig_update_connection_default(void); + eeconfig_update_connection_default(); +#endif // CONNECTION_ENABLE + #if (EECONFIG_KB_DATA_SIZE) > 0 eeconfig_init_kb_datablock(); -#endif +#endif // (EECONFIG_KB_DATA_SIZE) > 0 #if (EECONFIG_USER_DATA_SIZE) > 0 eeconfig_init_user_datablock(); -#endif +#endif // (EECONFIG_USER_DATA_SIZE) > 0 #if defined(VIA_ENABLE) // Invalidate VIA eeprom config, and then reset. - // Just in case if power is lost mid init, this makes sure that it pets + // Just in case if power is lost mid init, this makes sure that it gets // properly re-initialized. - via_eeprom_set_valid(false); eeconfig_init_via(); +#elif defined(DYNAMIC_KEYMAP_ENABLE) + dynamic_keymap_reset(); #endif eeconfig_init_kb(); + +#ifdef RGB_MATRIX_ENABLE + extern void eeconfig_force_flush_rgb_matrix(void); + eeconfig_force_flush_rgb_matrix(); +#endif // RGB_MATRIX_ENABLE +#ifdef LED_MATRIX_ENABLE + extern void eeconfig_force_flush_led_matrix(void); + eeconfig_force_flush_led_matrix(); +#endif // LED_MATRIX_ENABLE } -/** \brief eeconfig initialization - * - * FIXME: needs doc - */ void eeconfig_init(void) { eeconfig_init_quantum(); } -/** \brief eeconfig enable - * - * FIXME: needs doc - */ void eeconfig_enable(void) { - eeprom_update_word(EECONFIG_MAGIC, EECONFIG_MAGIC_NUMBER); + nvm_eeconfig_enable(); } -/** \brief eeconfig disable - * - * FIXME: needs doc - */ void eeconfig_disable(void) { -#if defined(EEPROM_DRIVER) - eeprom_driver_format(false); -#endif - eeprom_update_word(EECONFIG_MAGIC, EECONFIG_MAGIC_NUMBER_OFF); + nvm_eeconfig_disable(); } -/** \brief eeconfig is enabled - * - * FIXME: needs doc - */ bool eeconfig_is_enabled(void) { - bool is_eeprom_enabled = (eeprom_read_word(EECONFIG_MAGIC) == EECONFIG_MAGIC_NUMBER); + bool is_eeprom_enabled = nvm_eeconfig_is_enabled(); #ifdef VIA_ENABLE if (is_eeprom_enabled) { is_eeprom_enabled = via_eeprom_is_valid(); } -#endif +#endif // VIA_ENABLE return is_eeprom_enabled; } -/** \brief eeconfig is disabled - * - * FIXME: needs doc - */ bool eeconfig_is_disabled(void) { - bool is_eeprom_disabled = (eeprom_read_word(EECONFIG_MAGIC) == EECONFIG_MAGIC_NUMBER_OFF); + bool is_eeprom_disabled = nvm_eeconfig_is_disabled(); #ifdef VIA_ENABLE if (!is_eeprom_disabled) { is_eeprom_disabled = !via_eeprom_is_valid(); } -#endif +#endif // VIA_ENABLE return is_eeprom_disabled; } -/** \brief eeconfig read debug - * - * FIXME: needs doc - */ -uint8_t eeconfig_read_debug(void) { - return eeprom_read_byte(EECONFIG_DEBUG); +void eeconfig_read_debug(debug_config_t *debug_config) { + nvm_eeconfig_read_debug(debug_config); } -/** \brief eeconfig update debug - * - * FIXME: needs doc - */ -void eeconfig_update_debug(uint8_t val) { - eeprom_update_byte(EECONFIG_DEBUG, val); +void eeconfig_update_debug(const debug_config_t *debug_config) { + nvm_eeconfig_update_debug(debug_config); } -/** \brief eeconfig read default layer - * - * FIXME: needs doc - */ layer_state_t eeconfig_read_default_layer(void) { - uint8_t val = eeprom_read_byte(EECONFIG_DEFAULT_LAYER); - -#ifdef DEFAULT_LAYER_STATE_IS_VALUE_NOT_BITMASK - // stored as a layer number, so convert back to bitmask - return 1 << val; -#else - // stored as 8-bit-wide bitmask, so read the value directly - handling padding to 16/32 bit layer_state_t - return val; -#endif + return nvm_eeconfig_read_default_layer(); } -/** \brief eeconfig update default layer - * - * FIXME: needs doc - */ void eeconfig_update_default_layer(layer_state_t state) { -#ifdef DEFAULT_LAYER_STATE_IS_VALUE_NOT_BITMASK - // stored as a layer number, so only store the highest layer - uint8_t val = get_highest_layer(state); -#else - // stored as 8-bit-wide bitmask, so write the value directly - handling truncation from 16/32 bit layer_state_t - uint8_t val = state; -#endif + nvm_eeconfig_update_default_layer(state); +} - eeprom_update_byte(EECONFIG_DEFAULT_LAYER, val); +void eeconfig_read_keymap(keymap_config_t *keymap_config) { + nvm_eeconfig_read_keymap(keymap_config); +} +void eeconfig_update_keymap(const keymap_config_t *keymap_config) { + nvm_eeconfig_update_keymap(keymap_config); +} + +#ifdef AUDIO_ENABLE +void eeconfig_read_audio(audio_config_t *audio_config) { + nvm_eeconfig_read_audio(audio_config); +} +void eeconfig_update_audio(const audio_config_t *audio_config) { + nvm_eeconfig_update_audio(audio_config); +} +#endif // AUDIO_ENABLE + +#ifdef UNICODE_COMMON_ENABLE +void eeconfig_read_unicode_mode(unicode_config_t *unicode_config) { + return nvm_eeconfig_read_unicode_mode(unicode_config); +} +void eeconfig_update_unicode_mode(const unicode_config_t *unicode_config) { + nvm_eeconfig_update_unicode_mode(unicode_config); +} +#endif // UNICODE_COMMON_ENABLE + +#ifdef BACKLIGHT_ENABLE +void eeconfig_read_backlight(backlight_config_t *backlight_config) { + nvm_eeconfig_read_backlight(backlight_config); +} +void eeconfig_update_backlight(const backlight_config_t *backlight_config) { + nvm_eeconfig_update_backlight(backlight_config); } +#endif // BACKLIGHT_ENABLE -/** \brief eeconfig read keymap - * - * FIXME: needs doc - */ -uint16_t eeconfig_read_keymap(void) { - return eeprom_read_word(EECONFIG_KEYMAP); +#ifdef STENO_ENABLE +uint8_t eeconfig_read_steno_mode(void) { + return nvm_eeconfig_read_steno_mode(); } -/** \brief eeconfig update keymap - * - * FIXME: needs doc - */ -void eeconfig_update_keymap(uint16_t val) { - eeprom_update_word(EECONFIG_KEYMAP, val); +void eeconfig_update_steno_mode(uint8_t val) { + nvm_eeconfig_update_steno_mode(val); } +#endif // STENO_ENABLE -/** \brief eeconfig read audio - * - * FIXME: needs doc - */ -uint8_t eeconfig_read_audio(void) { - return eeprom_read_byte(EECONFIG_AUDIO); +#ifdef RGB_MATRIX_ENABLE +void eeconfig_read_rgb_matrix(rgb_config_t *rgb_matrix_config) { + nvm_eeconfig_read_rgb_matrix(rgb_matrix_config); } -/** \brief eeconfig update audio - * - * FIXME: needs doc - */ -void eeconfig_update_audio(uint8_t val) { - eeprom_update_byte(EECONFIG_AUDIO, val); +void eeconfig_update_rgb_matrix(const rgb_config_t *rgb_matrix_config) { + nvm_eeconfig_update_rgb_matrix(rgb_matrix_config); } +#endif // RGB_MATRIX_ENABLE + +#ifdef LED_MATRIX_ENABLE +void eeconfig_read_led_matrix(led_eeconfig_t *led_matrix_config) { + nvm_eeconfig_read_led_matrix(led_matrix_config); +} +void eeconfig_update_led_matrix(const led_eeconfig_t *led_matrix_config) { + nvm_eeconfig_update_led_matrix(led_matrix_config); +} +#endif // LED_MATRIX_ENABLE + +#ifdef RGBLIGHT_ENABLE +void eeconfig_read_rgblight(rgblight_config_t *rgblight_config) { + nvm_eeconfig_read_rgblight(rgblight_config); +} +void eeconfig_update_rgblight(const rgblight_config_t *rgblight_config) { + nvm_eeconfig_update_rgblight(rgblight_config); +} +#endif // RGBLIGHT_ENABLE #if (EECONFIG_KB_DATA_SIZE) == 0 -/** \brief eeconfig read kb - * - * FIXME: needs doc - */ uint32_t eeconfig_read_kb(void) { - return eeprom_read_dword(EECONFIG_KEYBOARD); + return nvm_eeconfig_read_kb(); } -/** \brief eeconfig update kb - * - * FIXME: needs doc - */ void eeconfig_update_kb(uint32_t val) { - eeprom_update_dword(EECONFIG_KEYBOARD, val); + nvm_eeconfig_update_kb(val); } #endif // (EECONFIG_KB_DATA_SIZE) == 0 #if (EECONFIG_USER_DATA_SIZE) == 0 -/** \brief eeconfig read user - * - * FIXME: needs doc - */ uint32_t eeconfig_read_user(void) { - return eeprom_read_dword(EECONFIG_USER); + return nvm_eeconfig_read_user(); } -/** \brief eeconfig update user - * - * FIXME: needs doc - */ void eeconfig_update_user(uint32_t val) { - eeprom_update_dword(EECONFIG_USER, val); + nvm_eeconfig_update_user(val); } #endif // (EECONFIG_USER_DATA_SIZE) == 0 -/** \brief eeconfig read haptic - * - * FIXME: needs doc - */ -uint32_t eeconfig_read_haptic(void) { - return eeprom_read_dword(EECONFIG_HAPTIC); -} -/** \brief eeconfig update haptic - * - * FIXME: needs doc - */ -void eeconfig_update_haptic(uint32_t val) { - eeprom_update_dword(EECONFIG_HAPTIC, val); -} - -/** \brief eeconfig read split handedness - * - * FIXME: needs doc - */ +#ifdef HAPTIC_ENABLE +void eeconfig_read_haptic(haptic_config_t *haptic_config) { + nvm_eeconfig_read_haptic(haptic_config); +} +void eeconfig_update_haptic(const haptic_config_t *haptic_config) { + nvm_eeconfig_update_haptic(haptic_config); +} +#endif // HAPTIC_ENABLE + +#ifdef CONNECTION_ENABLE +void eeconfig_read_connection(connection_config_t *config) { + nvm_eeconfig_read_connection(config); +} +void eeconfig_update_connection(const connection_config_t *config) { + nvm_eeconfig_update_connection(config); +} +#endif // CONNECTION_ENABLE + bool eeconfig_read_handedness(void) { - return !!eeprom_read_byte(EECONFIG_HANDEDNESS); + return nvm_eeconfig_read_handedness(); } -/** \brief eeconfig update split handedness - * - * FIXME: needs doc - */ void eeconfig_update_handedness(bool val) { - eeprom_update_byte(EECONFIG_HANDEDNESS, !!val); + nvm_eeconfig_update_handedness(val); } #if (EECONFIG_KB_DATA_SIZE) > 0 -/** \brief eeconfig assert keyboard data block version - * - * FIXME: needs doc - */ bool eeconfig_is_kb_datablock_valid(void) { - return eeprom_read_dword(EECONFIG_KEYBOARD) == (EECONFIG_KB_DATA_VERSION); -} -/** \brief eeconfig read keyboard data block - * - * FIXME: needs doc - */ -void eeconfig_read_kb_datablock(void *data) { - if (eeconfig_is_kb_datablock_valid()) { - eeprom_read_block(data, EECONFIG_KB_DATABLOCK, (EECONFIG_KB_DATA_SIZE)); - } else { - memset(data, 0, (EECONFIG_KB_DATA_SIZE)); - } + return nvm_eeconfig_is_kb_datablock_valid(); +} +uint32_t eeconfig_read_kb_datablock(void *data, uint32_t offset, uint32_t length) { + return nvm_eeconfig_read_kb_datablock(data, offset, length); +} +uint32_t eeconfig_update_kb_datablock(const void *data, uint32_t offset, uint32_t length) { + return nvm_eeconfig_update_kb_datablock(data, offset, length); } -/** \brief eeconfig update keyboard data block - * - * FIXME: needs doc - */ -void eeconfig_update_kb_datablock(const void *data) { - eeprom_update_dword(EECONFIG_KEYBOARD, (EECONFIG_KB_DATA_VERSION)); - eeprom_update_block(data, EECONFIG_KB_DATABLOCK, (EECONFIG_KB_DATA_SIZE)); -} -/** \brief eeconfig init keyboard data block - * - * FIXME: needs doc - */ __attribute__((weak)) void eeconfig_init_kb_datablock(void) { - uint8_t dummy_kb[(EECONFIG_KB_DATA_SIZE)] = {0}; - eeconfig_update_kb_datablock(dummy_kb); + nvm_eeconfig_init_kb_datablock(); } #endif // (EECONFIG_KB_DATA_SIZE) > 0 #if (EECONFIG_USER_DATA_SIZE) > 0 -/** \brief eeconfig assert user data block version - * - * FIXME: needs doc - */ bool eeconfig_is_user_datablock_valid(void) { - return eeprom_read_dword(EECONFIG_USER) == (EECONFIG_USER_DATA_VERSION); -} -/** \brief eeconfig read user data block - * - * FIXME: needs doc - */ -void eeconfig_read_user_datablock(void *data) { - if (eeconfig_is_user_datablock_valid()) { - eeprom_read_block(data, EECONFIG_USER_DATABLOCK, (EECONFIG_USER_DATA_SIZE)); - } else { - memset(data, 0, (EECONFIG_USER_DATA_SIZE)); - } + return nvm_eeconfig_is_user_datablock_valid(); +} +uint32_t eeconfig_read_user_datablock(void *data, uint32_t offset, uint32_t length) { + return nvm_eeconfig_read_user_datablock(data, offset, length); +} +uint32_t eeconfig_update_user_datablock(const void *data, uint32_t offset, uint32_t length) { + return nvm_eeconfig_update_user_datablock(data, offset, length); } -/** \brief eeconfig update user data block - * - * FIXME: needs doc - */ -void eeconfig_update_user_datablock(const void *data) { - eeprom_update_dword(EECONFIG_USER, (EECONFIG_USER_DATA_VERSION)); - eeprom_update_block(data, EECONFIG_USER_DATABLOCK, (EECONFIG_USER_DATA_SIZE)); -} -/** \brief eeconfig init user data block - * - * FIXME: needs doc - */ __attribute__((weak)) void eeconfig_init_user_datablock(void) { - uint8_t dummy_user[(EECONFIG_USER_DATA_SIZE)] = {0}; - eeconfig_update_user_datablock(dummy_user); + nvm_eeconfig_init_user_datablock(); } #endif // (EECONFIG_USER_DATA_SIZE) > 0 diff --git a/quantum/eeconfig.h b/quantum/eeconfig.h index 11cf1ccbca..d4d8d957be 100644 --- a/quantum/eeconfig.h +++ b/quantum/eeconfig.h @@ -19,59 +19,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #include <stdint.h> #include <stdbool.h> -#include <stddef.h> // offsetof -#include "eeprom.h" -#include "util.h" +#include <stddef.h> // offsetof #include "action_layer.h" // layer_state_t -#ifndef EECONFIG_MAGIC_NUMBER -# define EECONFIG_MAGIC_NUMBER (uint16_t)0xFEE5 // When changing, decrement this value to avoid future re-init issues -#endif -#define EECONFIG_MAGIC_NUMBER_OFF (uint16_t)0xFFFF - -// Dummy struct only used to calculate offsets -typedef struct PACKED { - uint16_t magic; - uint8_t debug; - uint8_t default_layer; - uint16_t keymap; - uint8_t backlight; - uint8_t audio; - uint32_t rgblight; - uint8_t unicode; - uint8_t steno; - uint8_t handedness; - uint32_t keyboard; - uint32_t user; - union { // Mutually exclusive - uint32_t led_matrix; - uint64_t rgb_matrix; - }; - uint32_t haptic; - uint8_t rgblight_ext; -} eeprom_core_t; - -/* EEPROM parameter address */ -#define EECONFIG_MAGIC (uint16_t *)(offsetof(eeprom_core_t, magic)) -#define EECONFIG_DEBUG (uint8_t *)(offsetof(eeprom_core_t, debug)) -#define EECONFIG_DEFAULT_LAYER (uint8_t *)(offsetof(eeprom_core_t, default_layer)) -#define EECONFIG_KEYMAP (uint16_t *)(offsetof(eeprom_core_t, keymap)) -#define EECONFIG_BACKLIGHT (uint8_t *)(offsetof(eeprom_core_t, backlight)) -#define EECONFIG_AUDIO (uint8_t *)(offsetof(eeprom_core_t, audio)) -#define EECONFIG_RGBLIGHT (uint32_t *)(offsetof(eeprom_core_t, rgblight)) -#define EECONFIG_UNICODEMODE (uint8_t *)(offsetof(eeprom_core_t, unicode)) -#define EECONFIG_STENOMODE (uint8_t *)(offsetof(eeprom_core_t, steno)) -#define EECONFIG_HANDEDNESS (uint8_t *)(offsetof(eeprom_core_t, handedness)) -#define EECONFIG_KEYBOARD (uint32_t *)(offsetof(eeprom_core_t, keyboard)) -#define EECONFIG_USER (uint32_t *)(offsetof(eeprom_core_t, user)) -#define EECONFIG_LED_MATRIX (uint32_t *)(offsetof(eeprom_core_t, led_matrix)) -#define EECONFIG_RGB_MATRIX (uint64_t *)(offsetof(eeprom_core_t, rgb_matrix)) -#define EECONFIG_HAPTIC (uint32_t *)(offsetof(eeprom_core_t, haptic)) -#define EECONFIG_RGBLIGHT_EXTENDED (uint8_t *)(offsetof(eeprom_core_t, rgblight_ext)) - -// Size of EEPROM being used for core data storage -#define EECONFIG_BASE_SIZE ((uint8_t)sizeof(eeprom_core_t)) - // Size of EEPROM dedicated to keyboard- and user-specific data #ifndef EECONFIG_KB_DATA_SIZE # define EECONFIG_KB_DATA_SIZE 0 @@ -86,12 +36,6 @@ typedef struct PACKED { # define EECONFIG_USER_DATA_VERSION (EECONFIG_USER_DATA_SIZE) #endif -#define EECONFIG_KB_DATABLOCK ((uint8_t *)(EECONFIG_BASE_SIZE)) -#define EECONFIG_USER_DATABLOCK ((uint8_t *)((EECONFIG_BASE_SIZE) + (EECONFIG_KB_DATA_SIZE))) - -// Size of EEPROM being used, other code can refer to this for available EEPROM -#define EECONFIG_SIZE ((EECONFIG_BASE_SIZE) + (EECONFIG_KB_DATA_SIZE) + (EECONFIG_USER_DATA_SIZE)) - /* debug bit */ #define EECONFIG_DEBUG_ENABLE (1 << 0) #define EECONFIG_DEBUG_MATRIX (1 << 1) @@ -117,22 +61,59 @@ void eeconfig_init_kb(void); void eeconfig_init_user(void); void eeconfig_enable(void); - void eeconfig_disable(void); -uint8_t eeconfig_read_debug(void); -void eeconfig_update_debug(uint8_t val); +typedef union debug_config_t debug_config_t; +void eeconfig_read_debug(debug_config_t *debug_config) __attribute__((nonnull)); +void eeconfig_update_debug(const debug_config_t *debug_config) __attribute__((nonnull)); layer_state_t eeconfig_read_default_layer(void); -void eeconfig_update_default_layer(layer_state_t val); +void eeconfig_update_default_layer(layer_state_t state); -uint16_t eeconfig_read_keymap(void); -void eeconfig_update_keymap(uint16_t val); +typedef union keymap_config_t keymap_config_t; +void eeconfig_read_keymap(keymap_config_t *keymap_config) __attribute__((nonnull)); +void eeconfig_update_keymap(const keymap_config_t *keymap_config) __attribute__((nonnull)); #ifdef AUDIO_ENABLE -uint8_t eeconfig_read_audio(void); -void eeconfig_update_audio(uint8_t val); -#endif +typedef union audio_config_t audio_config_t; +void eeconfig_read_audio(audio_config_t *audio_config) __attribute__((nonnull)); +void eeconfig_update_audio(const audio_config_t *audio_config) __attribute__((nonnull)); +#endif // AUDIO_ENABLE + +#ifdef UNICODE_COMMON_ENABLE +typedef union unicode_config_t unicode_config_t; +void eeconfig_read_unicode_mode(unicode_config_t *unicode_config) __attribute__((nonnull)); +void eeconfig_update_unicode_mode(const unicode_config_t *unicode_config) __attribute__((nonnull)); +#endif // UNICODE_COMMON_ENABLE + +#ifdef BACKLIGHT_ENABLE +typedef union backlight_config_t backlight_config_t; +void eeconfig_read_backlight(backlight_config_t *backlight_config) __attribute__((nonnull)); +void eeconfig_update_backlight(const backlight_config_t *backlight_config) __attribute__((nonnull)); +#endif // BACKLIGHT_ENABLE + +#ifdef STENO_ENABLE +uint8_t eeconfig_read_steno_mode(void); +void eeconfig_update_steno_mode(uint8_t val); +#endif // STENO_ENABLE + +#ifdef RGB_MATRIX_ENABLE +typedef union rgb_config_t rgb_config_t; +void eeconfig_read_rgb_matrix(rgb_config_t *rgb_matrix_config) __attribute__((nonnull)); +void eeconfig_update_rgb_matrix(const rgb_config_t *rgb_matrix_config) __attribute__((nonnull)); +#endif // RGB_MATRIX_ENABLE + +#ifdef LED_MATRIX_ENABLE +typedef union led_eeconfig_t led_eeconfig_t; +void eeconfig_read_led_matrix(led_eeconfig_t *led_matrix_config) __attribute__((nonnull)); +void eeconfig_update_led_matrix(const led_eeconfig_t *led_matrix_config) __attribute__((nonnull)); +#endif // LED_MATRIX_ENABLE + +#ifdef RGBLIGHT_ENABLE +typedef union rgblight_config_t rgblight_config_t; +void eeconfig_read_rgblight(rgblight_config_t *rgblight_config) __attribute__((nonnull)); +void eeconfig_update_rgblight(const rgblight_config_t *rgblight_config) __attribute__((nonnull)); +#endif // RGBLIGHT_ENABLE #if (EECONFIG_KB_DATA_SIZE) == 0 uint32_t eeconfig_read_kb(void); @@ -145,31 +126,42 @@ void eeconfig_update_user(uint32_t val); #endif // (EECONFIG_USER_DATA_SIZE) == 0 #ifdef HAPTIC_ENABLE -uint32_t eeconfig_read_haptic(void); -void eeconfig_update_haptic(uint32_t val); +typedef union haptic_config_t haptic_config_t; +void eeconfig_read_haptic(haptic_config_t *haptic_config) __attribute__((nonnull)); +void eeconfig_update_haptic(const haptic_config_t *haptic_config) __attribute__((nonnull)); +#endif + +#ifdef CONNECTION_ENABLE +typedef union connection_config_t connection_config_t; +void eeconfig_read_connection(connection_config_t *config); +void eeconfig_update_connection(const connection_config_t *config); #endif bool eeconfig_read_handedness(void); void eeconfig_update_handedness(bool val); #if (EECONFIG_KB_DATA_SIZE) > 0 -bool eeconfig_is_kb_datablock_valid(void); -void eeconfig_read_kb_datablock(void *data); -void eeconfig_update_kb_datablock(const void *data); -void eeconfig_init_kb_datablock(void); +bool eeconfig_is_kb_datablock_valid(void); +uint32_t eeconfig_read_kb_datablock(void *data, uint32_t offset, uint32_t length) __attribute__((nonnull)); +uint32_t eeconfig_update_kb_datablock(const void *data, uint32_t offset, uint32_t length) __attribute__((nonnull)); +void eeconfig_init_kb_datablock(void); +# define eeconfig_read_kb_datablock_field(__object, __field) eeconfig_read_kb_datablock(&(__object.__field), offsetof(typeof(__object), __field), sizeof(__object.__field)) +# define eeconfig_update_kb_datablock_field(__object, __field) eeconfig_update_kb_datablock(&(__object.__field), offsetof(typeof(__object), __field), sizeof(__object.__field)) #endif // (EECONFIG_KB_DATA_SIZE) > 0 #if (EECONFIG_USER_DATA_SIZE) > 0 -bool eeconfig_is_user_datablock_valid(void); -void eeconfig_read_user_datablock(void *data); -void eeconfig_update_user_datablock(const void *data); -void eeconfig_init_user_datablock(void); +bool eeconfig_is_user_datablock_valid(void); +uint32_t eeconfig_read_user_datablock(void *data, uint32_t offset, uint32_t length) __attribute__((nonnull)); +uint32_t eeconfig_update_user_datablock(const void *data, uint32_t offset, uint32_t length) __attribute__((nonnull)); +void eeconfig_init_user_datablock(void); +# define eeconfig_read_user_datablock_field(__object, __field) eeconfig_read_user_datablock(&(__object.__field), offsetof(__object, __field), sizeof(__object.__field)) +# define eeconfig_update_user_datablock_field(__object, __field) eeconfig_update_user_datablock(&(__object.__field), offsetof(__object, __field), sizeof(__object.__field)) #endif // (EECONFIG_USER_DATA_SIZE) > 0 // Any "checked" debounce variant used requires implementation of: // -- bool eeconfig_check_valid_##name(void) // -- void eeconfig_post_flush_##name(void) -#define EECONFIG_DEBOUNCE_HELPER_CHECKED(name, offset, config) \ +#define EECONFIG_DEBOUNCE_HELPER_CHECKED(name, config) \ static uint8_t dirty_##name = false; \ \ bool eeconfig_check_valid_##name(void); \ @@ -178,13 +170,13 @@ void eeconfig_init_user_datablock(void); static inline void eeconfig_init_##name(void) { \ dirty_##name = true; \ if (eeconfig_check_valid_##name()) { \ - eeprom_read_block(&config, offset, sizeof(config)); \ + eeconfig_read_##name(&config); \ dirty_##name = false; \ } \ } \ static inline void eeconfig_flush_##name(bool force) { \ if (force || dirty_##name) { \ - eeprom_update_block(&config, offset, sizeof(config)); \ + eeconfig_update_##name(&config); \ eeconfig_post_flush_##name(); \ dirty_##name = false; \ } \ @@ -206,10 +198,10 @@ void eeconfig_init_user_datablock(void); } \ } -#define EECONFIG_DEBOUNCE_HELPER(name, offset, config) \ - EECONFIG_DEBOUNCE_HELPER_CHECKED(name, offset, config) \ - \ - bool eeconfig_check_valid_##name(void) { \ - return true; \ - } \ +#define EECONFIG_DEBOUNCE_HELPER(name, config) \ + EECONFIG_DEBOUNCE_HELPER_CHECKED(name, config) \ + \ + bool eeconfig_check_valid_##name(void) { \ + return true; \ + } \ void eeconfig_post_flush_##name(void) {} diff --git a/quantum/haptic.c b/quantum/haptic.c index 81bad469b3..8a743480ff 100644 --- a/quantum/haptic.c +++ b/quantum/haptic.c @@ -67,7 +67,7 @@ void haptic_init(void) { if (!eeconfig_is_enabled()) { eeconfig_init(); } - haptic_config.raw = eeconfig_read_haptic(); + eeconfig_read_haptic(&haptic_config); #ifdef HAPTIC_SOLENOID solenoid_set_dwell(haptic_config.dwell); #endif @@ -122,13 +122,13 @@ void eeconfig_debug_haptic(void) { void haptic_enable(void) { set_haptic_config_enable(true); dprintf("haptic_config.enable = %u\n", haptic_config.enable); - eeconfig_update_haptic(haptic_config.raw); + eeconfig_update_haptic(&haptic_config); } void haptic_disable(void) { set_haptic_config_enable(false); dprintf("haptic_config.enable = %u\n", haptic_config.enable); - eeconfig_update_haptic(haptic_config.raw); + eeconfig_update_haptic(&haptic_config); } void haptic_toggle(void) { @@ -137,14 +137,14 @@ void haptic_toggle(void) { } else { haptic_enable(); } - eeconfig_update_haptic(haptic_config.raw); + eeconfig_update_haptic(&haptic_config); } void haptic_feedback_toggle(void) { haptic_config.feedback++; if (haptic_config.feedback >= HAPTIC_FEEDBACK_MAX) haptic_config.feedback = KEY_PRESS; dprintf("haptic_config.feedback = %u\n", !haptic_config.feedback); - eeconfig_update_haptic(haptic_config.raw); + eeconfig_update_haptic(&haptic_config); } void haptic_buzz_toggle(void) { @@ -225,26 +225,26 @@ void haptic_reset(void) { haptic_config.dwell = 0; haptic_config.buzz = 0; #endif - eeconfig_update_haptic(haptic_config.raw); + eeconfig_update_haptic(&haptic_config); dprintf("haptic_config.feedback = %u\n", haptic_config.feedback); dprintf("haptic_config.mode = %u\n", haptic_config.mode); } void haptic_set_feedback(uint8_t feedback) { haptic_config.feedback = feedback; - eeconfig_update_haptic(haptic_config.raw); + eeconfig_update_haptic(&haptic_config); dprintf("haptic_config.feedback = %u\n", haptic_config.feedback); } void haptic_set_mode(uint8_t mode) { haptic_config.mode = mode; - eeconfig_update_haptic(haptic_config.raw); + eeconfig_update_haptic(&haptic_config); dprintf("haptic_config.mode = %u\n", haptic_config.mode); } void haptic_set_amplitude(uint8_t amp) { haptic_config.amplitude = amp; - eeconfig_update_haptic(haptic_config.raw); + eeconfig_update_haptic(&haptic_config); dprintf("haptic_config.amplitude = %u\n", haptic_config.amplitude); #ifdef HAPTIC_DRV2605L drv2605l_amplitude(amp); @@ -253,13 +253,13 @@ void haptic_set_amplitude(uint8_t amp) { void haptic_set_buzz(uint8_t buzz) { haptic_config.buzz = buzz; - eeconfig_update_haptic(haptic_config.raw); + eeconfig_update_haptic(&haptic_config); dprintf("haptic_config.buzz = %u\n", haptic_config.buzz); } void haptic_set_dwell(uint8_t dwell) { haptic_config.dwell = dwell; - eeconfig_update_haptic(haptic_config.raw); + eeconfig_update_haptic(&haptic_config); dprintf("haptic_config.dwell = %u\n", haptic_config.dwell); } @@ -291,7 +291,7 @@ uint8_t haptic_get_dwell(void) { void haptic_enable_continuous(void) { haptic_config.cont = 1; dprintf("haptic_config.cont = %u\n", haptic_config.cont); - eeconfig_update_haptic(haptic_config.raw); + eeconfig_update_haptic(&haptic_config); #ifdef HAPTIC_DRV2605L drv2605l_rtp_init(); #endif @@ -300,7 +300,7 @@ void haptic_enable_continuous(void) { void haptic_disable_continuous(void) { haptic_config.cont = 0; dprintf("haptic_config.cont = %u\n", haptic_config.cont); - eeconfig_update_haptic(haptic_config.raw); + eeconfig_update_haptic(&haptic_config); #ifdef HAPTIC_DRV2605L drv2605l_write(DRV2605L_REG_MODE, 0x00); #endif diff --git a/quantum/haptic.h b/quantum/haptic.h index b283d5d268..e27f546d40 100644 --- a/quantum/haptic.h +++ b/quantum/haptic.h @@ -28,7 +28,7 @@ #endif /* EEPROM config settings */ -typedef union { +typedef union haptic_config_t { uint32_t raw; struct { bool enable : 1; diff --git a/quantum/keyboard.c b/quantum/keyboard.c index ad740de4b3..be51190a87 100644 --- a/quantum/keyboard.c +++ b/quantum/keyboard.c @@ -122,6 +122,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #ifdef SPLIT_KEYBOARD # include "split_util.h" #endif +#ifdef BATTERY_DRIVER +# include "battery.h" +#endif #ifdef BLUETOOTH_ENABLE # include "bluetooth.h" #endif @@ -143,6 +146,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #ifdef LAYER_LOCK_ENABLE # include "layer_lock.h" #endif +#ifdef CONNECTION_ENABLE +# include "connection.h" +#endif static uint32_t last_input_modification_time = 0; uint32_t last_input_activity_time(void) { @@ -429,8 +435,8 @@ void quantum_init(void) { } /* init globals */ - debug_config.raw = eeconfig_read_debug(); - keymap_config.raw = eeconfig_read_keymap(); + eeconfig_read_debug(&debug_config); + eeconfig_read_keymap(&keymap_config); #ifdef BOOTMAGIC_ENABLE bootmagic(); @@ -462,6 +468,9 @@ void keyboard_init(void) { #endif matrix_init(); quantum_init(); +#ifdef CONNECTION_ENABLE + connection_init(); +#endif led_init_ports(); #ifdef BACKLIGHT_ENABLE backlight_init_ports(); @@ -501,7 +510,7 @@ void keyboard_init(void) { #endif #if defined(NKRO_ENABLE) && defined(FORCE_NKRO) keymap_config.nkro = 1; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); #endif #ifdef DIP_SWITCH_ENABLE dip_switch_init(); @@ -522,6 +531,9 @@ void keyboard_init(void) { // init after split init pointing_device_init(); #endif +#ifdef BATTERY_DRIVER + battery_init(); +#endif #ifdef BLUETOOTH_ENABLE bluetooth_init(); #endif @@ -782,6 +794,10 @@ void keyboard_task(void) { joystick_task(); #endif +#ifdef BATTERY_DRIVER + battery_task(); +#endif + #ifdef BLUETOOTH_ENABLE bluetooth_task(); #endif diff --git a/quantum/keycode_config.h b/quantum/keycode_config.h index d1352c302e..529cd0e127 100644 --- a/quantum/keycode_config.h +++ b/quantum/keycode_config.h @@ -28,7 +28,7 @@ uint16_t keycode_config(uint16_t keycode); uint8_t mod_config(uint8_t mod); /* NOTE: Not portable. Bit field order depends on implementation */ -typedef union { +typedef union keymap_config_t { uint16_t raw; struct { bool swap_control_capslock : 1; diff --git a/quantum/keycode_string.c b/quantum/keycode_string.c new file mode 100644 index 0000000000..18044f2ef6 --- /dev/null +++ b/quantum/keycode_string.c @@ -0,0 +1,564 @@ +// Copyright 2024-2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include "keycode_string.h" + +#include <string.h> +#include "bitwise.h" +#include "keycode.h" +#include "progmem.h" +#include "quantum_keycodes.h" +#include "util.h" + +typedef int_fast8_t index_t; + +// clang-format off +/** Packs a 7-char keycode name, ignoring the third char, as 3 words. */ +#define KEYCODE_NAME7(c0, c1, unused_c2, c3, c4, c5, c6) \ + ((uint16_t)c0) | (((uint16_t)c1) << 8), \ + ((uint16_t)c3) | (((uint16_t)c4) << 8), \ + ((uint16_t)c5) | (((uint16_t)c6) << 8) + +/** + * @brief Names of some common keycodes. + * + * Each (keycode, name) entry is stored flat in 8 bytes in PROGMEM. Names in + * this table must be at most 7 chars long and have an underscore '_' for the + * third char. This underscore is assumed and not actually stored. + * + * To save memory, feature-specific key entries are ifdef'd to include them only + * when their feature is enabled. + */ +static const uint16_t common_names[] PROGMEM = { + KC_TRNS, KEYCODE_NAME7('K', 'C', '_', 'T', 'R', 'N', 'S'), + KC_ENT , KEYCODE_NAME7('K', 'C', '_', 'E', 'N', 'T', 0 ), + KC_ESC , KEYCODE_NAME7('K', 'C', '_', 'E', 'S', 'C', 0 ), + KC_BSPC, KEYCODE_NAME7('K', 'C', '_', 'B', 'S', 'P', 'C'), + KC_TAB , KEYCODE_NAME7('K', 'C', '_', 'T', 'A', 'B', 0 ), + KC_SPC , KEYCODE_NAME7('K', 'C', '_', 'S', 'P', 'C', 0 ), + KC_MINS, KEYCODE_NAME7('K', 'C', '_', 'M', 'I', 'N', 'S'), + KC_EQL , KEYCODE_NAME7('K', 'C', '_', 'E', 'Q', 'L', 0 ), + KC_LBRC, KEYCODE_NAME7('K', 'C', '_', 'L', 'B', 'R', 'C'), + KC_RBRC, KEYCODE_NAME7('K', 'C', '_', 'R', 'B', 'R', 'C'), + KC_BSLS, KEYCODE_NAME7('K', 'C', '_', 'B', 'S', 'L', 'S'), + KC_NUHS, KEYCODE_NAME7('K', 'C', '_', 'N', 'U', 'H', 'S'), + KC_SCLN, KEYCODE_NAME7('K', 'C', '_', 'S', 'C', 'L', 'N'), + KC_QUOT, KEYCODE_NAME7('K', 'C', '_', 'Q', 'U', 'O', 'T'), + KC_GRV , KEYCODE_NAME7('K', 'C', '_', 'G', 'R', 'V', 0 ), + KC_COMM, KEYCODE_NAME7('K', 'C', '_', 'C', 'O', 'M', 'M'), + KC_DOT , KEYCODE_NAME7('K', 'C', '_', 'D', 'O', 'T', 0 ), + KC_SLSH, KEYCODE_NAME7('K', 'C', '_', 'S', 'L', 'S', 'H'), + KC_CAPS, KEYCODE_NAME7('K', 'C', '_', 'C', 'A', 'P', 'S'), + KC_PSCR, KEYCODE_NAME7('K', 'C', '_', 'P', 'S', 'C', 'R'), + KC_PAUS, KEYCODE_NAME7('K', 'C', '_', 'P', 'A', 'U', 'S'), + KC_INS , KEYCODE_NAME7('K', 'C', '_', 'I', 'N', 'S', 0 ), + KC_HOME, KEYCODE_NAME7('K', 'C', '_', 'H', 'O', 'M', 'E'), + KC_PGUP, KEYCODE_NAME7('K', 'C', '_', 'P', 'G', 'U', 'P'), + KC_DEL , KEYCODE_NAME7('K', 'C', '_', 'D', 'E', 'L', 0 ), + KC_END , KEYCODE_NAME7('K', 'C', '_', 'E', 'N', 'D', 0 ), + KC_PGDN, KEYCODE_NAME7('K', 'C', '_', 'P', 'G', 'D', 'N'), + KC_RGHT, KEYCODE_NAME7('K', 'C', '_', 'R', 'G', 'H', 'T'), + KC_LEFT, KEYCODE_NAME7('K', 'C', '_', 'L', 'E', 'F', 'T'), + KC_DOWN, KEYCODE_NAME7('K', 'C', '_', 'D', 'O', 'W', 'N'), + KC_UP , KEYCODE_NAME7('K', 'C', '_', 'U', 'P', 0 , 0 ), + KC_NUBS, KEYCODE_NAME7('K', 'C', '_', 'N', 'U', 'B', 'S'), + KC_HYPR, KEYCODE_NAME7('K', 'C', '_', 'H', 'Y', 'P', 'R'), + KC_MEH , KEYCODE_NAME7('K', 'C', '_', 'M', 'E', 'H', 0 ), +#ifdef EXTRAKEY_ENABLE + KC_WHOM, KEYCODE_NAME7('K', 'C', '_', 'W', 'H', 'O', 'M'), + KC_WBAK, KEYCODE_NAME7('K', 'C', '_', 'W', 'B', 'A', 'K'), + KC_WFWD, KEYCODE_NAME7('K', 'C', '_', 'W', 'F', 'W', 'D'), + KC_WSTP, KEYCODE_NAME7('K', 'C', '_', 'W', 'S', 'T', 'P'), + KC_WREF, KEYCODE_NAME7('K', 'C', '_', 'W', 'R', 'E', 'F'), + KC_MNXT, KEYCODE_NAME7('K', 'C', '_', 'M', 'N', 'X', 'T'), + KC_MPRV, KEYCODE_NAME7('K', 'C', '_', 'M', 'P', 'R', 'V'), + KC_MPLY, KEYCODE_NAME7('K', 'C', '_', 'M', 'P', 'L', 'Y'), + KC_MUTE, KEYCODE_NAME7('K', 'C', '_', 'M', 'U', 'T', 'E'), + KC_VOLU, KEYCODE_NAME7('K', 'C', '_', 'V', 'O', 'L', 'U'), + KC_VOLD, KEYCODE_NAME7('K', 'C', '_', 'V', 'O', 'L', 'D'), +#endif // EXTRAKEY_ENABLE +#ifdef MOUSEKEY_ENABLE + MS_LEFT, KEYCODE_NAME7('M', 'S', '_', 'L', 'E', 'F', 'T'), + MS_RGHT, KEYCODE_NAME7('M', 'S', '_', 'R', 'G', 'H', 'T'), + MS_UP , KEYCODE_NAME7('M', 'S', '_', 'U', 'P', 0 , 0 ), + MS_DOWN, KEYCODE_NAME7('M', 'S', '_', 'D', 'O', 'W', 'N'), + MS_WHLL, KEYCODE_NAME7('M', 'S', '_', 'W', 'H', 'L', 'L'), + MS_WHLR, KEYCODE_NAME7('M', 'S', '_', 'W', 'H', 'L', 'R'), + MS_WHLU, KEYCODE_NAME7('M', 'S', '_', 'W', 'H', 'L', 'U'), + MS_WHLD, KEYCODE_NAME7('M', 'S', '_', 'W', 'H', 'L', 'D'), +#endif // MOUSEKEY_ENABLE +#ifdef SWAP_HANDS_ENABLE + SH_ON , KEYCODE_NAME7('S', 'H', '_', 'O', 'N', 0 , 0 ), + SH_OFF , KEYCODE_NAME7('S', 'H', '_', 'O', 'F', 'F', 0 ), + SH_MON , KEYCODE_NAME7('S', 'H', '_', 'M', 'O', 'N', 0 ), + SH_MOFF, KEYCODE_NAME7('S', 'H', '_', 'M', 'O', 'F', 'F'), + SH_TOGG, KEYCODE_NAME7('S', 'H', '_', 'T', 'O', 'G', 'G'), + SH_TT , KEYCODE_NAME7('S', 'H', '_', 'T', 'T', 0 , 0 ), +# if !defined(NO_ACTION_ONESHOT) + SH_OS , KEYCODE_NAME7('S', 'H', '_', 'O', 'S', 0 , 0 ), +# endif // !defined(NO_ACTION_ONESHOT) +#endif // SWAP_HANDS_ENABLE +#ifdef LEADER_ENABLE + QK_LEAD, KEYCODE_NAME7('Q', 'K', '_', 'L', 'E', 'A', 'D'), +#endif // LEADER_ENABLE +#ifdef KEY_LOCK_ENABLE + QK_LOCK, KEYCODE_NAME7('Q', 'K', '_', 'L', 'O', 'C', 'K'), +#endif // KEY_LOCK_ENABLE +#ifdef TRI_LAYER_ENABLE + TL_LOWR, KEYCODE_NAME7('T', 'L', '_', 'L', 'O', 'W', 'R'), + TL_UPPR, KEYCODE_NAME7('T', 'L', '_', 'U', 'P', 'P', 'R'), +#endif // TRI_LAYER_ENABLE +#ifdef GRAVE_ESC_ENABLE + QK_GESC, KEYCODE_NAME7('Q', 'K', '_', 'G', 'E', 'S', 'C'), +#endif // GRAVE_ESC_ENABLE +#ifdef CAPS_WORD_ENABLE + CW_TOGG, KEYCODE_NAME7('C', 'W', '_', 'T', 'O', 'G', 'G'), +#endif // CAPS_WORD_ENABLE +#ifdef SECURE_ENABLE + SE_LOCK, KEYCODE_NAME7('S', 'E', '_', 'L', 'O', 'C', 'K'), + SE_UNLK, KEYCODE_NAME7('S', 'E', '_', 'U', 'N', 'L', 'K'), + SE_TOGG, KEYCODE_NAME7('S', 'E', '_', 'T', 'O', 'G', 'G'), + SE_REQ , KEYCODE_NAME7('S', 'E', '_', 'R', 'E', 'Q', 0 ), +#endif // SECURE_ENABLE +#ifdef LAYER_LOCK_ENABLE + QK_LLCK, KEYCODE_NAME7('Q', 'K', '_', 'L', 'L', 'C', 'K'), +#endif // LAYER_LOCK_ENABLE + EE_CLR , KEYCODE_NAME7('E', 'E', '_', 'C', 'L', 'R', 0 ), + QK_BOOT, KEYCODE_NAME7('Q', 'K', '_', 'B', 'O', 'O', 'T'), + DB_TOGG, KEYCODE_NAME7('D', 'B', '_', 'T', 'O', 'G', 'G'), +}; +// clang-format on + +/** Users can override this to define names of additional keycodes. */ +__attribute__((weak)) const keycode_string_name_t* keycode_string_names_data_user = NULL; +__attribute__((weak)) uint16_t keycode_string_names_size_user = 0; +/** Keyboard vendors can override this to define names of additional keycodes. */ +__attribute__((weak)) const keycode_string_name_t* keycode_string_names_data_kb = NULL; +__attribute__((weak)) uint16_t keycode_string_names_size_kb = 0; +/** Names of the 4 mods on each hand. */ +static const char mod_names[] PROGMEM = "CTL\0SFT\0ALT\0GUI"; +/** Internal buffer for holding a stringified keycode. */ +static char buffer[32]; +#define BUFFER_MAX_LEN (sizeof(buffer) - 1) +static index_t buffer_len; + +/** Finds the name of a keycode in `common_names` or returns NULL. */ +static const char* search_common_names(uint16_t keycode) { + static uint8_t buffer[8]; + + for (int_fast16_t offset = 0; offset < ARRAY_SIZE(common_names); offset += 4) { + if (keycode == pgm_read_word(common_names + offset)) { + const uint16_t w0 = pgm_read_word(common_names + offset + 1); + const uint16_t w1 = pgm_read_word(common_names + offset + 2); + const uint16_t w2 = pgm_read_word(common_names + offset + 3); + buffer[0] = (uint8_t)w0; + buffer[1] = (uint8_t)(w0 >> 8); + buffer[2] = '_'; + buffer[3] = (uint8_t)w1; + buffer[4] = (uint8_t)(w1 >> 8); + buffer[5] = (uint8_t)w2; + buffer[6] = (uint8_t)(w2 >> 8); + buffer[7] = 0; + return (const char*)buffer; + } + } + + return NULL; +} + +/** + * @brief Finds the name of a keycode in table or returns NULL. + * + * @param data Pointer to table to be searched. + * @param size Numer of entries in the table. + * @return Name string for the keycode, or NULL if not found. + */ +static const char* search_table(const keycode_string_name_t* data, uint16_t size, uint16_t keycode) { + if (data != NULL) { + for (uint16_t i = 0; i < size; ++i) { + if (data[i].keycode == keycode) { + return data[i].name; + } + } + } + return NULL; +} + +/** Formats `number` in `base`, either 10 or 16. */ +static char* number_string(uint16_t number, int8_t base) { + static char result[7]; + result[sizeof(result) - 1] = '\0'; + index_t i = sizeof(result) - 1; + do { + const uint8_t digit = number % base; + number /= base; + result[--i] = (digit < 10) ? (char)(digit + UINT8_C('0')) : (char)(digit + (UINT8_C('A') - 10)); + } while (number > 0 && i > 0); + + if (base == 16 && i >= 2) { + result[--i] = 'x'; + result[--i] = '0'; + } + return result + i; +} + +/** Appends `str` to `buffer`, truncating if the result would overflow. */ +static void append(const char* str) { + char* dest = buffer + buffer_len; + index_t i; + for (i = 0; buffer_len + i < BUFFER_MAX_LEN && str[i]; ++i) { + dest[i] = str[i]; + } + buffer_len += i; + buffer[buffer_len] = '\0'; +} + +/** Same as append(), but where `str` is a PROGMEM string. */ +static void append_P(const char* str) { + char* dest = buffer + buffer_len; + index_t i; + for (i = 0; buffer_len + i < BUFFER_MAX_LEN; ++i) { + const char c = pgm_read_byte(&str[i]); + if (c == '\0') { + break; + } + dest[i] = c; + } + buffer_len += i; + buffer[buffer_len] = '\0'; +} + +/** Appends a single char to `buffer` if there is space. */ +static void append_char(char c) { + if (buffer_len < BUFFER_MAX_LEN) { + buffer[buffer_len] = c; + buffer[++buffer_len] = '\0'; + } +} + +/** Formats `number` in `base`, either 10 or 16, and appends it to `buffer`. */ +static void append_number(uint16_t number, int8_t base) { + append(number_string(number, base)); +} + +/** Stringifies 5-bit mods and appends it to `buffer`. */ +static void append_5_bit_mods(uint8_t mods) { + const bool is_rhs = mods > 15; + const uint8_t csag = mods & 15; + if (csag != 0 && (csag & (csag - 1)) == 0) { // One mod is set. + append_P(PSTR("MOD_")); + append_char(is_rhs ? 'R' : 'L'); + append_P(&mod_names[4 * biton(csag)]); + } else { // Fallback: write the mod as a hex value. + append_number(mods, 16); + } +} + +/** + * @brief Writes a keycode of the format `name` + "(" + `param` + ")". + * @note `name` is a PROGMEM string, `param` is not. + */ +static void append_unary_keycode(const char* name, const char* param) { + append_P(name); + append_char('('); + append(param); + append_char(')'); +} + +/** + * @brief Writes a keycode of the format `name` + `number`. + * @note `name` is a PROGMEM string. + */ +static void append_numbered_keycode(const char* name, uint16_t number) { + append_P(name); + append_number(number, 10); +} + +/** Stringifies `keycode` and appends it to `buffer`. */ +static void append_keycode(uint16_t keycode) { + // In case there is overlap among tables, search `keycode_string_names_user` + // first so that it takes precedence. + const char* keycode_name = search_table(keycode_string_names_data_user, keycode_string_names_size_user, keycode); + if (keycode_name) { + append(keycode_name); + return; + } + keycode_name = search_table(keycode_string_names_data_kb, keycode_string_names_size_kb, keycode); + if (keycode_name) { + append(keycode_name); + return; + } + keycode_name = search_common_names(keycode); + if (keycode_name) { + append(keycode_name); + return; + } + + if (keycode <= 255) { // Basic keycodes. + switch (keycode) { + // Modifiers KC_LSFT, KC_RCTL, etc. + case MODIFIER_KEYCODE_RANGE: { + const uint8_t i = keycode - KC_LCTL; + const bool is_rhs = i > 3; + append_P(PSTR("KC_")); + append_char(is_rhs ? 'R' : 'L'); + append_P(&mod_names[4 * (i & 3)]); + } + return; + + // Letters A-Z. + case KC_A ... KC_Z: + append_P(PSTR("KC_")); + append_char((char)(keycode + (UINT8_C('A') - KC_A))); + return; + + // Digits 0-9 (NOTE: Unlike the ASCII order, KC_0 comes *after* KC_9.) + case KC_1 ... KC_0: + append_numbered_keycode(PSTR("KC_"), (keycode - (KC_1 - 1)) % 10); + return; + + // Keypad digits. + case KC_KP_1 ... KC_KP_0: + append_numbered_keycode(PSTR("KC_KP_"), (keycode - (KC_KP_1 - 1)) % 10); + return; + + // Function keys. F1-F12 and F13-F24 are coded in separate ranges. + case KC_F1 ... KC_F12: + append_numbered_keycode(PSTR("KC_F"), keycode - (KC_F1 - 1)); + return; + + case KC_F13 ... KC_F24: + append_numbered_keycode(PSTR("KC_F"), keycode - (KC_F13 - 13)); + return; + } + } + + // clang-format off + switch (keycode) { + // A modified keycode, like S(KC_1) for Shift + 1 = !. This implementation + // only covers modified keycodes where one modifier is applied, e.g. a + // Ctrl + Shift + kc or Hyper + kc keycode is not formatted. + case QK_MODS ... QK_MODS_MAX: { + uint8_t mods = QK_MODS_GET_MODS(keycode); + const bool is_rhs = mods > 15; + mods &= 15; + if (mods != 0 && (mods & (mods - 1)) == 0) { // One mod is set. + const char* name = &mod_names[4 * biton(mods)]; + if (is_rhs) { + append_char('R'); + append_P(name); + } else { + append_char(pgm_read_byte(&name[0])); + } + append_char('('); + append_keycode(QK_MODS_GET_BASIC_KEYCODE(keycode)); + append_char(')'); + return; + } + } break; + +#if !defined(NO_ACTION_ONESHOT) + case QK_ONE_SHOT_MOD ... QK_ONE_SHOT_MOD_MAX: // One-shot mod OSM(mod) key. + append_P(PSTR("OSM(")); + append_5_bit_mods(QK_ONE_SHOT_MOD_GET_MODS(keycode)); + append_char(')'); + return; +#endif // !defined(NO_ACTION_ONESHOT) + + // Various layer switch keys. + case QK_LAYER_TAP ... QK_LAYER_TAP_MAX: // Layer-tap LT(layer,kc) key. + append_P(PSTR("LT(")); + append_number(QK_LAYER_TAP_GET_LAYER(keycode), 10); + append_char(','); + append_keycode(QK_LAYER_TAP_GET_TAP_KEYCODE(keycode)); + append_char(')'); + return; + + case QK_LAYER_MOD ... QK_LAYER_MOD_MAX: // LM(layer,mod) key. + append_P(PSTR("LM(")); + append_number(QK_LAYER_MOD_GET_LAYER(keycode), 10); + append_char(','); + append_5_bit_mods(QK_LAYER_MOD_GET_MODS(keycode)); + append_char(')'); + return; + + case QK_TO ... QK_TO_MAX: // TO(layer) key. + append_unary_keycode(PSTR("TO"), number_string(QK_TO_GET_LAYER(keycode), 10)); + return; + + case QK_MOMENTARY ... QK_MOMENTARY_MAX: // MO(layer) key. + append_unary_keycode(PSTR("MO"), number_string(QK_MOMENTARY_GET_LAYER(keycode), 10)); + return; + + case QK_DEF_LAYER ... QK_DEF_LAYER_MAX: // DF(layer) key. + append_unary_keycode(PSTR("DF"), number_string(QK_DEF_LAYER_GET_LAYER(keycode), 10)); + return; + + case QK_TOGGLE_LAYER ... QK_TOGGLE_LAYER_MAX: // TG(layer) key. + append_unary_keycode(PSTR("TG"), number_string(QK_TOGGLE_LAYER_GET_LAYER(keycode), 10)); + return; + +#if !defined(NO_ACTION_ONESHOT) + case QK_ONE_SHOT_LAYER ... QK_ONE_SHOT_LAYER_MAX: // OSL(layer) key. + append_unary_keycode(PSTR("OSL"), number_string(QK_ONE_SHOT_LAYER_GET_LAYER(keycode), 10)); + return; +#endif // !defined(NO_ACTION_ONESHOT) + + case QK_LAYER_TAP_TOGGLE ... QK_LAYER_TAP_TOGGLE_MAX: // TT(layer) key. + append_unary_keycode(PSTR("TT"), number_string(QK_LAYER_TAP_TOGGLE_GET_LAYER(keycode), 10)); + return; + + case QK_PERSISTENT_DEF_LAYER ... QK_PERSISTENT_DEF_LAYER_MAX: // PDF(layer) key. + append_unary_keycode(PSTR("PDF"), number_string(QK_PERSISTENT_DEF_LAYER_GET_LAYER(keycode), 10)); + return; + + // Mod-tap MT(mod,kc) key. This implementation formats the MT keys where + // one modifier is applied. For MT keys with multiple modifiers, the mod + // arg is written numerically as a hex code. + case QK_MOD_TAP ... QK_MOD_TAP_MAX: { + uint8_t mods = QK_MOD_TAP_GET_MODS(keycode); + const bool is_rhs = mods > 15; + const uint8_t csag = mods & 15; + if (csag != 0 && (csag & (csag - 1)) == 0) { // One mod is set. + append_char(is_rhs ? 'R' : 'L'); + append_P(&mod_names[4 * biton(csag)]); + append_P(PSTR("_T(")); + } else if (mods == MOD_HYPR) { + append_P(PSTR("HYPR_T(")); + } else if (mods == MOD_MEH) { + append_P(PSTR("MEH_T(")); + } else { + append_P(PSTR("MT(")); + append_number(mods, 16); + append_char(','); + } + append_keycode(QK_MOD_TAP_GET_TAP_KEYCODE(keycode)); + append_char(')'); + } return; + + case QK_TAP_DANCE ... QK_TAP_DANCE_MAX: // Tap dance TD(i) key. + append_unary_keycode(PSTR("TD"), number_string(QK_TAP_DANCE_GET_INDEX(keycode), 10)); + return; + +#ifdef UNICODE_ENABLE + case QK_UNICODE ... QK_UNICODE_MAX: // Unicode UC(codepoint) key. + append_unary_keycode(PSTR("UC"), number_string(QK_UNICODE_GET_CODE_POINT(keycode), 16)); + return; +#elif defined(UNICODEMAP_ENABLE) + case QK_UNICODEMAP ... QK_UNICODEMAP_MAX: // Unicode Map UM(i) key. + append_unary_keycode(PSTR("UM"), number_string(QK_UNICODEMAP_GET_INDEX(keycode), 10)); + return; + + case QK_UNICODEMAP_PAIR ... QK_UNICODEMAP_PAIR_MAX: { // UP(i,j) key. + const uint8_t i = QK_UNICODEMAP_PAIR_GET_UNSHIFTED_INDEX(keycode); + const uint8_t j = QK_UNICODEMAP_PAIR_GET_SHIFTED_INDEX(keycode); + append_P(PSTR("UP(")); + append_number(i, 10); + append_char(','); + append_number(j, 10); + append_char(')'); + } return; +#endif +#ifdef MOUSEKEY_ENABLE + case MS_BTN1 ... MS_BTN8: // Mouse button keycode. + append_numbered_keycode(PSTR("MS_BTN"), keycode - (MS_BTN1 - 1)); + return; +#endif // MOUSEKEY_ENABLE +#ifdef SWAP_HANDS_ENABLE + case QK_SWAP_HANDS ... QK_SWAP_HANDS_MAX: // Swap Hands SH_T(kc) key. + if (!IS_SWAP_HANDS_KEYCODE(keycode)) { + append_P(PSTR("SH_T(")); + append_keycode(QK_SWAP_HANDS_GET_TAP_KEYCODE(keycode)); + append_char(')'); + return; + } + break; +#endif // SWAP_HANDS_ENABLE +#ifdef JOYSTICK_ENABLE + case JOYSTICK_KEYCODE_RANGE: // Joystick JS_ key. + append_numbered_keycode(PSTR("JS_"), keycode - JS_0); + return; +#endif // JOYSTICK_ENABLE +#ifdef PROGRAMMABLE_BUTTON_ENABLE + case PROGRAMMABLE_BUTTON_KEYCODE_RANGE: // Programmable button PB_ key. + append_numbered_keycode(PSTR("PB_"), keycode - (PB_1 - 1)); + return; +#endif // PROGRAMMABLE_BUTTON_ENABLE + + case MACRO_KEYCODE_RANGE: // Macro range MC_ keycode. + append_numbered_keycode(PSTR("MC_"), keycode - MC_0); + return; + + case KB_KEYCODE_RANGE: // Keyboard range keycode. + append_numbered_keycode(PSTR("QK_KB_"), keycode - QK_KB_0); + return; + + case USER_KEYCODE_RANGE: // User range keycode. + append_numbered_keycode(PSTR("QK_USER_"), keycode - QK_USER_0); + return; + + // It would take a nontrivial amount of string data to cover some + // feature-specific keycodes, such as those for MIDI and lighting. As a + // fallback while still providing some information, we stringify + // remaining keys in known code ranges as "QK_<feature>+<number>". +#ifdef MAGIC_ENABLE + case MAGIC_KEYCODE_RANGE: + append_numbered_keycode(PSTR("QK_MAGIC+"), keycode - QK_MAGIC); + return; +#endif // MAGIC_ENABLE +#ifdef MIDI_ENABLE + case MIDI_KEYCODE_RANGE: + append_numbered_keycode(PSTR("QK_MIDI+"), keycode - QK_MIDI); + return; +#endif // MIDI_ENABLE +#ifdef SEQUENCER_ENABLE + case SEQUENCER_KEYCODE_RANGE: + append_numbered_keycode(PSTR("QK_SEQUENCER+"), keycode - QK_SEQUENCER); + return; +#endif // SEQUENCER_ENABLE +#ifdef AUDIO_ENABLE + case AUDIO_KEYCODE_RANGE: + append_numbered_keycode(PSTR("QK_AUDIO+"), keycode - QK_AUDIO); + return; +#endif // AUDIO_ENABLE +#if defined(BACKLIGHT_ENABLE) || defined(LED_MATRIX_ENABLE) || defined(RGBLIGHT_ENABLED) || defined(RGB_MATRIX_ENABLE) // Lighting-related features. + case QK_LIGHTING ... QK_LIGHTING_MAX: + append_numbered_keycode(PSTR("QK_LIGHTING+"), keycode - QK_LIGHTING); + return; +#endif // defined(BACKLIGHT_ENABLE) || defined(LED_MATRIX_ENABLE) || defined(RGBLIGHT_ENABLED) || defined(RGB_MATRIX_ENABLE) +#ifdef STENO_ENABLE + case STENO_KEYCODE_RANGE: + append_numbered_keycode(PSTR("QK_STENO+"), keycode - QK_STENO); + return; +#endif // AUDIO_ENABLE +#ifdef BLUETOOTH_ENABLE + case CONNECTION_KEYCODE_RANGE: + append_numbered_keycode(PSTR("QK_CONNECTION+"), keycode - QK_CONNECTION); + return; +#endif // BLUETOOTH_ENABLE + case QUANTUM_KEYCODE_RANGE: + append_numbered_keycode(PSTR("QK_QUANTUM+"), keycode - QK_QUANTUM); + return; + } + // clang-format on + + append_number(keycode, 16); // Fallback: write keycode as hex value. +} + +const char* get_keycode_string(uint16_t keycode) { + buffer_len = 0; + buffer[0] = '\0'; + append_keycode(keycode); + return buffer; +} diff --git a/quantum/keycode_string.h b/quantum/keycode_string.h new file mode 100644 index 0000000000..1315613a80 --- /dev/null +++ b/quantum/keycode_string.h @@ -0,0 +1,134 @@ +// Copyright 2024-2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#pragma once + +#include <stdint.h> + +#if KEYCODE_STRING_ENABLE + +/** + * @brief Formats a QMK keycode as a human-readable string. + * + * Given a keycode, like `KC_A`, this function returns a formatted string, like + * "KC_A". This is useful for debugging and diagnostics so that keys are more + * easily identified than they would be by raw numerical codes. + * + * @note The returned char* string should be used right away. The string memory + * is reused and will be overwritten by the next call to `keycode_string()`. + * + * Many common QMK keycodes are understood by this function, but not all. + * Recognized keycodes include: + * + * - Most basic keycodes, including letters `KC_A` - `KC_Z`, digits `KC_0` - + * `KC_9`, function keys `KC_F1` - `KC_F24`, and modifiers like `KC_LSFT`. + * + * - Modified basic keycodes, like `S(KC_1)` (Shift + 1 = !). + * + * - `MO`, `TO`, `TG`, `OSL`, `LM(layer,mod)`, `LT(layer,kc)` layer switches. + * + * - One-shot mod `OSM(mod)` keycodes. + * + * - Mod-tap `MT(mod, kc)` keycodes. + * + * - Tap dance keycodes `TD(i)`. + * + * - Swap hands keycodes `SH_T(kc)`, `SH_TOGG`, etc. + * + * - Joystick keycodes `JS_n`. + * + * - Programmable button keycodes `PB_n`. + * + * - Unicode `UC(codepoint)` and Unicode Map `UM(i)` and `UP(i,j)` keycodes. + * + * - Keyboard range keycodes `QK_KB_*`. + * + * - User range (SAFE_RANGE) keycodes `QK_USER_*`. + * + * Keycodes involving mods like `OSM`, `LM`, `MT` are fully supported only where + * a single mod is applied. + * + * Unrecognized keycodes are printed numerically as hex values like `0x1ABC`. + * + * Optionally, use `keycode_string_names_user` or `keycode_string_names_kb` to + * define names for additional keycodes or override how any of the above are + * formatted. + * + * @param keycode QMK keycode. + * @return Stringified keycode. + */ +const char* get_keycode_string(uint16_t keycode); + +/** Defines a human-readable name for a keycode. */ +typedef struct { + uint16_t keycode; + const char* name; +} keycode_string_name_t; + +// clang-format off +/** + * @brief Defines names for additional keycodes for `get_keycode_string()`. + * + * Define `KEYCODE_STRING_NAMES_USER` in your keymap.c to add names for + * additional keycodes to `keycode_string()`. This table may also be used to + * override how `keycode_string()` formats a keycode. For example, supposing + * keymap.c defines `MYMACRO1` and `MYMACRO2` as custom keycodes: + * + * KEYCODE_STRING_NAMES_USER( + * KEYCODE_STRING_NAME(MYMACRO1), + * KEYCODE_STRING_NAME(MYMACRO2), + * KEYCODE_STRING_NAME(KC_EXLM), + * ); + * + * The above defines names for `MYMACRO1` and `MYMACRO2`, and overrides + * `KC_EXLM` to format as "KC_EXLM" instead of the default "S(KC_1)". + */ +# define KEYCODE_STRING_NAMES_USER(...) \ + static const keycode_string_name_t keycode_string_names_user[] = {__VA_ARGS__}; \ + uint16_t keycode_string_names_size_user = \ + sizeof(keycode_string_names_user) / sizeof(keycode_string_name_t); \ + const keycode_string_name_t* keycode_string_names_data_user = \ + keycode_string_names_user + +/** Same as above, but defines keycode string names at the keyboard level. */ +# define KEYCODE_STRING_NAMES_KB(...) \ + static const keycode_string_name_t keycode_string_names_kb[] = {__VA_ARGS__}; \ + uint16_t keycode_string_names_size_kb = \ + sizeof(keycode_string_names_kb) / sizeof(keycode_string_name_t); \ + const keycode_string_name_t* keycode_string_names_data_kb = \ + keycode_string_names_kb + +/** Helper to define a keycode_string_name_t. */ +# define KEYCODE_STRING_NAME(kc) \ + { (kc), #kc } +// clang-format on + +extern const keycode_string_name_t* keycode_string_names_data_user; +extern uint16_t keycode_string_names_size_user; +extern const keycode_string_name_t* keycode_string_names_data_kb; +extern uint16_t keycode_string_names_size_kb; + +#else + +// When keycode_string is disabled, fall back to printing keycodes numerically +// as decimal values, using get_u16_str() from quantum.c. +# define get_keycode_string(kc) get_u16_str(kc, ' ') + +const char* get_u16_str(uint16_t curr_num, char curr_pad); + +# define KEYCODE_STRING_NAMES_USER(...) +# define KEYCODE_STRING_NAMES_KB(...) +# define KEYCODE_STRING_NAME(kc) + +#endif // KEYCODE_STRING_ENABLE diff --git a/quantum/led_matrix/led_matrix.c b/quantum/led_matrix/led_matrix.c index 58263c62e3..f9d76e2776 100644 --- a/quantum/led_matrix/led_matrix.c +++ b/quantum/led_matrix/led_matrix.c @@ -19,7 +19,6 @@ #include "led_matrix.h" #include "progmem.h" -#include "eeprom.h" #include "eeconfig.h" #include "keyboard.h" #include "sync_timer.h" @@ -86,9 +85,9 @@ static last_hit_t last_hit_buffer; const uint8_t k_led_matrix_split[2] = LED_MATRIX_SPLIT; #endif -EECONFIG_DEBOUNCE_HELPER(led_matrix, EECONFIG_LED_MATRIX, led_matrix_eeconfig); +EECONFIG_DEBOUNCE_HELPER(led_matrix, led_matrix_eeconfig); -void eeconfig_update_led_matrix(void) { +void eeconfig_force_flush_led_matrix(void) { eeconfig_flush_led_matrix(true); } diff --git a/quantum/led_matrix/led_matrix.h b/quantum/led_matrix/led_matrix.h index a3468a2003..0006d487e9 100644 --- a/quantum/led_matrix/led_matrix.h +++ b/quantum/led_matrix/led_matrix.h @@ -115,7 +115,7 @@ enum led_matrix_effects { }; void eeconfig_update_led_matrix_default(void); -void eeconfig_update_led_matrix(void); +void eeconfig_force_flush_led_matrix(void); void eeconfig_debug_led_matrix(void); uint8_t led_matrix_map_row_column_to_led_kb(uint8_t row, uint8_t column, uint8_t *led_i); diff --git a/quantum/led_matrix/led_matrix_types.h b/quantum/led_matrix/led_matrix_types.h index 5a516ceb10..810420f46f 100644 --- a/quantum/led_matrix/led_matrix_types.h +++ b/quantum/led_matrix/led_matrix_types.h @@ -71,7 +71,7 @@ typedef struct PACKED { uint8_t flags[LED_MATRIX_LED_COUNT]; } led_config_t; -typedef union { +typedef union led_eeconfig_t { uint32_t raw; struct PACKED { uint8_t enable : 2; diff --git a/quantum/logging/debug.h b/quantum/logging/debug.h index b0d9b9a10e..6675680ec7 100644 --- a/quantum/logging/debug.h +++ b/quantum/logging/debug.h @@ -28,7 +28,7 @@ extern "C" { /* * Debug output control */ -typedef union { +typedef union debug_config_t { struct { bool enable : 1; bool matrix : 1; diff --git a/quantum/nvm/eeprom/nvm_dynamic_keymap.c b/quantum/nvm/eeprom/nvm_dynamic_keymap.c new file mode 100644 index 0000000000..5f514acc1a --- /dev/null +++ b/quantum/nvm/eeprom/nvm_dynamic_keymap.c @@ -0,0 +1,193 @@ +// Copyright 2024 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "keycodes.h" +#include "eeprom.h" +#include "dynamic_keymap.h" +#include "nvm_dynamic_keymap.h" +#include "nvm_eeprom_eeconfig_internal.h" +#include "nvm_eeprom_via_internal.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +#ifdef ENCODER_ENABLE +# include "encoder.h" +#endif + +#ifdef VIA_ENABLE +# include "via.h" +# define DYNAMIC_KEYMAP_EEPROM_START (VIA_EEPROM_CONFIG_END) +#else +# define DYNAMIC_KEYMAP_EEPROM_START (EECONFIG_SIZE) +#endif + +#ifndef DYNAMIC_KEYMAP_EEPROM_MAX_ADDR +# define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR (TOTAL_EEPROM_BYTE_COUNT - 1) +#endif + +_Static_assert(DYNAMIC_KEYMAP_EEPROM_MAX_ADDR <= (TOTAL_EEPROM_BYTE_COUNT - 1), "DYNAMIC_KEYMAP_EEPROM_MAX_ADDR is configured to use more space than what is available for the selected EEPROM driver"); + +// Due to usage of uint16_t check for max 65535 +_Static_assert(DYNAMIC_KEYMAP_EEPROM_MAX_ADDR <= 65535, "DYNAMIC_KEYMAP_EEPROM_MAX_ADDR must be less than 65536"); + +// If DYNAMIC_KEYMAP_EEPROM_ADDR not explicitly defined in config.h, +#ifndef DYNAMIC_KEYMAP_EEPROM_ADDR +# define DYNAMIC_KEYMAP_EEPROM_ADDR DYNAMIC_KEYMAP_EEPROM_START +#endif + +// Dynamic encoders starts after dynamic keymaps +#ifndef DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR +# define DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR (DYNAMIC_KEYMAP_EEPROM_ADDR + (DYNAMIC_KEYMAP_LAYER_COUNT * MATRIX_ROWS * MATRIX_COLS * 2)) +#endif + +// Dynamic macro starts after dynamic encoders, but only when using ENCODER_MAP +#ifdef ENCODER_MAP_ENABLE +# ifndef DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR +# define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR (DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR + (DYNAMIC_KEYMAP_LAYER_COUNT * NUM_ENCODERS * 2 * 2)) +# endif // DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR +#else // ENCODER_MAP_ENABLE +# ifndef DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR +# define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR (DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR) +# endif // DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR +#endif // ENCODER_MAP_ENABLE + +// Sanity check that dynamic keymaps fit in available EEPROM +// If there's not 100 bytes available for macros, then something is wrong. +// The keyboard should override DYNAMIC_KEYMAP_LAYER_COUNT to reduce it, +// or DYNAMIC_KEYMAP_EEPROM_MAX_ADDR to increase it, *only if* the microcontroller has +// more than the default. +_Static_assert((DYNAMIC_KEYMAP_EEPROM_MAX_ADDR) - (DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR) >= 100, "Dynamic keymaps are configured to use more EEPROM than is available."); + +#ifndef TOTAL_EEPROM_BYTE_COUNT +# error Unknown total EEPROM size. Cannot derive maximum for dynamic keymaps. +#endif +// Dynamic macros are stored after the keymaps and use what is available +// up to and including DYNAMIC_KEYMAP_EEPROM_MAX_ADDR. +#ifndef DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE +# define DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE (DYNAMIC_KEYMAP_EEPROM_MAX_ADDR - DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR + 1) +#endif + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +void nvm_dynamic_keymap_erase(void) { + // No-op, nvm_eeconfig_erase() will have already erased EEPROM if necessary. +} + +void nvm_dynamic_keymap_macro_erase(void) { + // No-op, nvm_eeconfig_erase() will have already erased EEPROM if necessary. +} + +static inline void *dynamic_keymap_key_to_eeprom_address(uint8_t layer, uint8_t row, uint8_t column) { + return ((void *)DYNAMIC_KEYMAP_EEPROM_ADDR) + (layer * MATRIX_ROWS * MATRIX_COLS * 2) + (row * MATRIX_COLS * 2) + (column * 2); +} + +uint16_t nvm_dynamic_keymap_read_keycode(uint8_t layer, uint8_t row, uint8_t column) { + if (layer >= DYNAMIC_KEYMAP_LAYER_COUNT || row >= MATRIX_ROWS || column >= MATRIX_COLS) return KC_NO; + void *address = dynamic_keymap_key_to_eeprom_address(layer, row, column); + // Big endian, so we can read/write EEPROM directly from host if we want + uint16_t keycode = eeprom_read_byte(address) << 8; + keycode |= eeprom_read_byte(address + 1); + return keycode; +} + +void nvm_dynamic_keymap_update_keycode(uint8_t layer, uint8_t row, uint8_t column, uint16_t keycode) { + if (layer >= DYNAMIC_KEYMAP_LAYER_COUNT || row >= MATRIX_ROWS || column >= MATRIX_COLS) return; + void *address = dynamic_keymap_key_to_eeprom_address(layer, row, column); + // Big endian, so we can read/write EEPROM directly from host if we want + eeprom_update_byte(address, (uint8_t)(keycode >> 8)); + eeprom_update_byte(address + 1, (uint8_t)(keycode & 0xFF)); +} + +#ifdef ENCODER_MAP_ENABLE +static void *dynamic_keymap_encoder_to_eeprom_address(uint8_t layer, uint8_t encoder_id) { + return ((void *)DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR) + (layer * NUM_ENCODERS * 2 * 2) + (encoder_id * 2 * 2); +} + +uint16_t nvm_dynamic_keymap_read_encoder(uint8_t layer, uint8_t encoder_id, bool clockwise) { + if (layer >= DYNAMIC_KEYMAP_LAYER_COUNT || encoder_id >= NUM_ENCODERS) return KC_NO; + void *address = dynamic_keymap_encoder_to_eeprom_address(layer, encoder_id); + // Big endian, so we can read/write EEPROM directly from host if we want + uint16_t keycode = ((uint16_t)eeprom_read_byte(address + (clockwise ? 0 : 2))) << 8; + keycode |= eeprom_read_byte(address + (clockwise ? 0 : 2) + 1); + return keycode; +} + +void nvm_dynamic_keymap_update_encoder(uint8_t layer, uint8_t encoder_id, bool clockwise, uint16_t keycode) { + if (layer >= DYNAMIC_KEYMAP_LAYER_COUNT || encoder_id >= NUM_ENCODERS) return; + void *address = dynamic_keymap_encoder_to_eeprom_address(layer, encoder_id); + // Big endian, so we can read/write EEPROM directly from host if we want + eeprom_update_byte(address + (clockwise ? 0 : 2), (uint8_t)(keycode >> 8)); + eeprom_update_byte(address + (clockwise ? 0 : 2) + 1, (uint8_t)(keycode & 0xFF)); +} +#endif // ENCODER_MAP_ENABLE + +void nvm_dynamic_keymap_read_buffer(uint32_t offset, uint32_t size, uint8_t *data) { + uint32_t dynamic_keymap_eeprom_size = DYNAMIC_KEYMAP_LAYER_COUNT * MATRIX_ROWS * MATRIX_COLS * 2; + void * source = (void *)(uintptr_t)(DYNAMIC_KEYMAP_EEPROM_ADDR + offset); + uint8_t *target = data; + for (uint32_t i = 0; i < size; i++) { + if (offset + i < dynamic_keymap_eeprom_size) { + *target = eeprom_read_byte(source); + } else { + *target = 0x00; + } + source++; + target++; + } +} + +void nvm_dynamic_keymap_update_buffer(uint32_t offset, uint32_t size, uint8_t *data) { + uint32_t dynamic_keymap_eeprom_size = DYNAMIC_KEYMAP_LAYER_COUNT * MATRIX_ROWS * MATRIX_COLS * 2; + void * target = (void *)(uintptr_t)(DYNAMIC_KEYMAP_EEPROM_ADDR + offset); + uint8_t *source = data; + for (uint32_t i = 0; i < size; i++) { + if (offset + i < dynamic_keymap_eeprom_size) { + eeprom_update_byte(target, *source); + } + source++; + target++; + } +} + +uint32_t nvm_dynamic_keymap_macro_size(void) { + return DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE; +} + +void nvm_dynamic_keymap_macro_read_buffer(uint32_t offset, uint32_t size, uint8_t *data) { + void * source = (void *)(uintptr_t)(DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR + offset); + uint8_t *target = data; + for (uint16_t i = 0; i < size; i++) { + if (offset + i < DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE) { + *target = eeprom_read_byte(source); + } else { + *target = 0x00; + } + source++; + target++; + } +} + +void nvm_dynamic_keymap_macro_update_buffer(uint32_t offset, uint32_t size, uint8_t *data) { + void * target = (void *)(uintptr_t)(DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR + offset); + uint8_t *source = data; + for (uint16_t i = 0; i < size; i++) { + if (offset + i < DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE) { + eeprom_update_byte(target, *source); + } + source++; + target++; + } +} + +void nvm_dynamic_keymap_macro_reset(void) { + void * start = (void *)(uintptr_t)(DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR); + void * end = (void *)(uintptr_t)(DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR + DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE); + long remaining = end - start; + uint8_t dummy[16] = {0}; + for (int i = 0; i < DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE; i += sizeof(dummy)) { + int this_loop = remaining < sizeof(dummy) ? remaining : sizeof(dummy); + eeprom_update_block(dummy, start, this_loop); + start += this_loop; + remaining -= this_loop; + } +} diff --git a/quantum/nvm/eeprom/nvm_eeconfig.c b/quantum/nvm/eeprom/nvm_eeconfig.c new file mode 100644 index 0000000000..d9495d2753 --- /dev/null +++ b/quantum/nvm/eeprom/nvm_eeconfig.c @@ -0,0 +1,305 @@ +// Copyright 2024 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#include <string.h> +#include "nvm_eeconfig.h" +#include "nvm_eeprom_eeconfig_internal.h" +#include "util.h" +#include "eeconfig.h" +#include "debug.h" +#include "eeprom.h" +#include "keycode_config.h" + +#ifdef EEPROM_DRIVER +# include "eeprom_driver.h" +#endif + +#ifdef AUDIO_ENABLE +# include "audio.h" +#endif + +#ifdef BACKLIGHT_ENABLE +# include "backlight.h" +#endif + +#ifdef RGBLIGHT_ENABLE +# include "rgblight.h" +#endif + +#ifdef RGB_MATRIX_ENABLE +# include "rgb_matrix_types.h" +#endif + +#ifdef LED_MATRIX_ENABLE +# include "led_matrix_types.h" +#endif + +#ifdef UNICODE_COMMON_ENABLE +# include "unicode.h" +#endif + +#ifdef HAPTIC_ENABLE +# include "haptic.h" +#endif + +#ifdef CONNECTION_ENABLE +# include "connection.h" +#endif + +void nvm_eeconfig_erase(void) { +#ifdef EEPROM_DRIVER + eeprom_driver_format(false); +#endif // EEPROM_DRIVER +} + +bool nvm_eeconfig_is_enabled(void) { + return eeprom_read_word(EECONFIG_MAGIC) == EECONFIG_MAGIC_NUMBER; +} + +bool nvm_eeconfig_is_disabled(void) { + return eeprom_read_word(EECONFIG_MAGIC) == EECONFIG_MAGIC_NUMBER_OFF; +} + +void nvm_eeconfig_enable(void) { + eeprom_update_word(EECONFIG_MAGIC, EECONFIG_MAGIC_NUMBER); +} + +void nvm_eeconfig_disable(void) { +#if defined(EEPROM_DRIVER) + eeprom_driver_format(false); +#endif + eeprom_update_word(EECONFIG_MAGIC, EECONFIG_MAGIC_NUMBER_OFF); +} + +void nvm_eeconfig_read_debug(debug_config_t *debug_config) { + debug_config->raw = eeprom_read_byte(EECONFIG_DEBUG); +} +void nvm_eeconfig_update_debug(const debug_config_t *debug_config) { + eeprom_update_byte(EECONFIG_DEBUG, debug_config->raw); +} + +layer_state_t nvm_eeconfig_read_default_layer(void) { + uint8_t val = eeprom_read_byte(EECONFIG_DEFAULT_LAYER); +#ifdef DEFAULT_LAYER_STATE_IS_VALUE_NOT_BITMASK + // stored as a layer number, so convert back to bitmask + return (layer_state_t)1 << val; +#else + // stored as 8-bit-wide bitmask, so read the value directly - handling padding to 16/32 bit layer_state_t + return (layer_state_t)val; +#endif +} +void nvm_eeconfig_update_default_layer(layer_state_t state) { +#ifdef DEFAULT_LAYER_STATE_IS_VALUE_NOT_BITMASK + // stored as a layer number, so only store the highest layer + uint8_t val = get_highest_layer(state); +#else + // stored as 8-bit-wide bitmask, so write the value directly - handling truncation from 16/32 bit layer_state_t + uint8_t val = (uint8_t)state; +#endif + eeprom_update_byte(EECONFIG_DEFAULT_LAYER, val); +} + +void nvm_eeconfig_read_keymap(keymap_config_t *keymap_config) { + keymap_config->raw = eeprom_read_word(EECONFIG_KEYMAP); +} +void nvm_eeconfig_update_keymap(const keymap_config_t *keymap_config) { + eeprom_update_word(EECONFIG_KEYMAP, keymap_config->raw); +} + +#ifdef AUDIO_ENABLE +void nvm_eeconfig_read_audio(audio_config_t *audio_config) { + audio_config->raw = eeprom_read_byte(EECONFIG_AUDIO); +} +void nvm_eeconfig_update_audio(const audio_config_t *audio_config) { + eeprom_update_byte(EECONFIG_AUDIO, audio_config->raw); +} +#endif // AUDIO_ENABLE + +#ifdef UNICODE_COMMON_ENABLE +void nvm_eeconfig_read_unicode_mode(unicode_config_t *unicode_config) { + unicode_config->raw = eeprom_read_byte(EECONFIG_UNICODEMODE); +} +void nvm_eeconfig_update_unicode_mode(const unicode_config_t *unicode_config) { + eeprom_update_byte(EECONFIG_UNICODEMODE, unicode_config->raw); +} +#endif // UNICODE_COMMON_ENABLE + +#ifdef BACKLIGHT_ENABLE +void nvm_eeconfig_read_backlight(backlight_config_t *backlight_config) { + backlight_config->raw = eeprom_read_byte(EECONFIG_BACKLIGHT); +} +void nvm_eeconfig_update_backlight(const backlight_config_t *backlight_config) { + eeprom_update_byte(EECONFIG_BACKLIGHT, backlight_config->raw); +} +#endif // BACKLIGHT_ENABLE + +#ifdef STENO_ENABLE +uint8_t nvm_eeconfig_read_steno_mode(void) { + return eeprom_read_byte(EECONFIG_STENOMODE); +} +void nvm_eeconfig_update_steno_mode(uint8_t val) { + eeprom_update_byte(EECONFIG_STENOMODE, val); +} +#endif // STENO_ENABLE + +#ifdef RGBLIGHT_ENABLE +#endif // RGBLIGHT_ENABLE + +#ifdef RGB_MATRIX_ENABLE +void nvm_eeconfig_read_rgb_matrix(rgb_config_t *rgb_matrix_config) { + eeprom_read_block(rgb_matrix_config, EECONFIG_RGB_MATRIX, sizeof(rgb_config_t)); +} +void nvm_eeconfig_update_rgb_matrix(const rgb_config_t *rgb_matrix_config) { + eeprom_update_block(rgb_matrix_config, EECONFIG_RGB_MATRIX, sizeof(rgb_config_t)); +} +#endif // RGB_MATRIX_ENABLE + +#ifdef LED_MATRIX_ENABLE +void nvm_eeconfig_read_led_matrix(led_eeconfig_t *led_matrix_config) { + eeprom_read_block(led_matrix_config, EECONFIG_LED_MATRIX, sizeof(led_eeconfig_t)); +} +void nvm_eeconfig_update_led_matrix(const led_eeconfig_t *led_matrix_config) { + eeprom_update_block(led_matrix_config, EECONFIG_LED_MATRIX, sizeof(led_eeconfig_t)); +} +#endif // LED_MATRIX_ENABLE + +#ifdef RGBLIGHT_ENABLE +void nvm_eeconfig_read_rgblight(rgblight_config_t *rgblight_config) { + rgblight_config->raw = eeprom_read_dword(EECONFIG_RGBLIGHT); + rgblight_config->raw |= ((uint64_t)eeprom_read_byte(EECONFIG_RGBLIGHT_EXTENDED) << 32); +} +void nvm_eeconfig_update_rgblight(const rgblight_config_t *rgblight_config) { + eeprom_update_dword(EECONFIG_RGBLIGHT, rgblight_config->raw & 0xFFFFFFFF); + eeprom_update_byte(EECONFIG_RGBLIGHT_EXTENDED, (rgblight_config->raw >> 32) & 0xFF); +} +#endif // RGBLIGHT_ENABLE + +#if (EECONFIG_KB_DATA_SIZE) == 0 +uint32_t nvm_eeconfig_read_kb(void) { + return eeprom_read_dword(EECONFIG_KEYBOARD); +} +void nvm_eeconfig_update_kb(uint32_t val) { + eeprom_update_dword(EECONFIG_KEYBOARD, val); +} +#endif // (EECONFIG_KB_DATA_SIZE) == 0 + +#if (EECONFIG_USER_DATA_SIZE) == 0 +uint32_t nvm_eeconfig_read_user(void) { + return eeprom_read_dword(EECONFIG_USER); +} +void nvm_eeconfig_update_user(uint32_t val) { + eeprom_update_dword(EECONFIG_USER, val); +} +#endif // (EECONFIG_USER_DATA_SIZE) == 0 + +#ifdef HAPTIC_ENABLE +void nvm_eeconfig_read_haptic(haptic_config_t *haptic_config) { + haptic_config->raw = eeprom_read_dword(EECONFIG_HAPTIC); +} +void nvm_eeconfig_update_haptic(const haptic_config_t *haptic_config) { + eeprom_update_dword(EECONFIG_HAPTIC, haptic_config->raw); +} +#endif // HAPTIC_ENABLE + +#ifdef CONNECTION_ENABLE +void nvm_eeconfig_read_connection(connection_config_t *config) { + config->raw = eeprom_read_byte(EECONFIG_CONNECTION); +} +void nvm_eeconfig_update_connection(const connection_config_t *config) { + eeprom_update_byte(EECONFIG_CONNECTION, config->raw); +} +#endif // CONNECTION_ENABLE + +bool nvm_eeconfig_read_handedness(void) { + return !!eeprom_read_byte(EECONFIG_HANDEDNESS); +} +void nvm_eeconfig_update_handedness(bool val) { + eeprom_update_byte(EECONFIG_HANDEDNESS, !!val); +} + +#if (EECONFIG_KB_DATA_SIZE) > 0 + +bool nvm_eeconfig_is_kb_datablock_valid(void) { + return eeprom_read_dword(EECONFIG_KEYBOARD) == (EECONFIG_KB_DATA_VERSION); +} + +uint32_t nvm_eeconfig_read_kb_datablock(void *data, uint32_t offset, uint32_t length) { + if (eeconfig_is_kb_datablock_valid()) { + void *ee_start = (void *)(uintptr_t)(EECONFIG_KB_DATABLOCK + offset); + void *ee_end = (void *)(uintptr_t)(EECONFIG_KB_DATABLOCK + MIN(EECONFIG_KB_DATA_SIZE, offset + length)); + eeprom_read_block(data, ee_start, ee_end - ee_start); + return ee_end - ee_start; + } else { + memset(data, 0, length); + return length; + } +} + +uint32_t nvm_eeconfig_update_kb_datablock(const void *data, uint32_t offset, uint32_t length) { + eeprom_update_dword(EECONFIG_KEYBOARD, (EECONFIG_KB_DATA_VERSION)); + + void *ee_start = (void *)(uintptr_t)(EECONFIG_KB_DATABLOCK + offset); + void *ee_end = (void *)(uintptr_t)(EECONFIG_KB_DATABLOCK + MIN(EECONFIG_KB_DATA_SIZE, offset + length)); + eeprom_update_block(data, ee_start, ee_end - ee_start); + return ee_end - ee_start; +} + +void nvm_eeconfig_init_kb_datablock(void) { + eeprom_update_dword(EECONFIG_KEYBOARD, (EECONFIG_KB_DATA_VERSION)); + + void * start = (void *)(uintptr_t)(EECONFIG_KB_DATABLOCK); + void * end = (void *)(uintptr_t)(EECONFIG_KB_DATABLOCK + EECONFIG_KB_DATA_SIZE); + long remaining = end - start; + uint8_t dummy[16] = {0}; + for (int i = 0; i < EECONFIG_KB_DATA_SIZE; i += sizeof(dummy)) { + int this_loop = remaining < sizeof(dummy) ? remaining : sizeof(dummy); + eeprom_update_block(dummy, start, this_loop); + start += this_loop; + remaining -= this_loop; + } +} + +#endif // (EECONFIG_KB_DATA_SIZE) > 0 + +#if (EECONFIG_USER_DATA_SIZE) > 0 + +bool nvm_eeconfig_is_user_datablock_valid(void) { + return eeprom_read_dword(EECONFIG_USER) == (EECONFIG_USER_DATA_VERSION); +} + +uint32_t nvm_eeconfig_read_user_datablock(void *data, uint32_t offset, uint32_t length) { + if (eeconfig_is_user_datablock_valid()) { + void *ee_start = (void *)(uintptr_t)(EECONFIG_USER_DATABLOCK + offset); + void *ee_end = (void *)(uintptr_t)(EECONFIG_USER_DATABLOCK + MIN(EECONFIG_USER_DATA_SIZE, offset + length)); + eeprom_read_block(data, ee_start, ee_end - ee_start); + return ee_end - ee_start; + } else { + memset(data, 0, length); + return length; + } +} + +uint32_t nvm_eeconfig_update_user_datablock(const void *data, uint32_t offset, uint32_t length) { + eeprom_update_dword(EECONFIG_USER, (EECONFIG_USER_DATA_VERSION)); + + void *ee_start = (void *)(uintptr_t)(EECONFIG_USER_DATABLOCK + offset); + void *ee_end = (void *)(uintptr_t)(EECONFIG_USER_DATABLOCK + MIN(EECONFIG_USER_DATA_SIZE, offset + length)); + eeprom_update_block(data, ee_start, ee_end - ee_start); + return ee_end - ee_start; +} + +void nvm_eeconfig_init_user_datablock(void) { + eeprom_update_dword(EECONFIG_USER, (EECONFIG_USER_DATA_VERSION)); + + void * start = (void *)(uintptr_t)(EECONFIG_USER_DATABLOCK); + void * end = (void *)(uintptr_t)(EECONFIG_USER_DATABLOCK + EECONFIG_USER_DATA_SIZE); + long remaining = end - start; + uint8_t dummy[16] = {0}; + for (int i = 0; i < EECONFIG_USER_DATA_SIZE; i += sizeof(dummy)) { + int this_loop = remaining < sizeof(dummy) ? remaining : sizeof(dummy); + eeprom_update_block(dummy, start, this_loop); + start += this_loop; + remaining -= this_loop; + } +} + +#endif // (EECONFIG_USER_DATA_SIZE) > 0 diff --git a/quantum/nvm/eeprom/nvm_eeprom_eeconfig_internal.h b/quantum/nvm/eeprom/nvm_eeprom_eeconfig_internal.h new file mode 100644 index 0000000000..41b76f1f65 --- /dev/null +++ b/quantum/nvm/eeprom/nvm_eeprom_eeconfig_internal.h @@ -0,0 +1,61 @@ +// Copyright 2024 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include <stdint.h> +#include <stddef.h> // offsetof +#include "eeconfig.h" +#include "util.h" + +// Dummy struct only used to calculate offsets +typedef struct PACKED { + uint16_t magic; + uint8_t debug; + uint8_t default_layer; + uint16_t keymap; + uint8_t backlight; + uint8_t audio; + uint32_t rgblight; + uint8_t unicode; + uint8_t steno; + uint8_t handedness; + uint32_t keyboard; + uint32_t user; + union { // Mutually exclusive + uint32_t led_matrix; + uint64_t rgb_matrix; + }; + uint32_t haptic; + uint8_t rgblight_ext; + uint8_t connection; +} eeprom_core_t; + +/* EEPROM parameter address */ +#define EECONFIG_MAGIC (uint16_t *)(offsetof(eeprom_core_t, magic)) +#define EECONFIG_DEBUG (uint8_t *)(offsetof(eeprom_core_t, debug)) +#define EECONFIG_DEFAULT_LAYER (uint8_t *)(offsetof(eeprom_core_t, default_layer)) +#define EECONFIG_KEYMAP (uint16_t *)(offsetof(eeprom_core_t, keymap)) +#define EECONFIG_BACKLIGHT (uint8_t *)(offsetof(eeprom_core_t, backlight)) +#define EECONFIG_AUDIO (uint8_t *)(offsetof(eeprom_core_t, audio)) +#define EECONFIG_RGBLIGHT (uint32_t *)(offsetof(eeprom_core_t, rgblight)) +#define EECONFIG_UNICODEMODE (uint8_t *)(offsetof(eeprom_core_t, unicode)) +#define EECONFIG_STENOMODE (uint8_t *)(offsetof(eeprom_core_t, steno)) +#define EECONFIG_HANDEDNESS (uint8_t *)(offsetof(eeprom_core_t, handedness)) +#define EECONFIG_KEYBOARD (uint32_t *)(offsetof(eeprom_core_t, keyboard)) +#define EECONFIG_USER (uint32_t *)(offsetof(eeprom_core_t, user)) +#define EECONFIG_LED_MATRIX (uint32_t *)(offsetof(eeprom_core_t, led_matrix)) +#define EECONFIG_RGB_MATRIX (uint64_t *)(offsetof(eeprom_core_t, rgb_matrix)) +#define EECONFIG_HAPTIC (uint32_t *)(offsetof(eeprom_core_t, haptic)) +#define EECONFIG_RGBLIGHT_EXTENDED (uint8_t *)(offsetof(eeprom_core_t, rgblight_ext)) +#define EECONFIG_CONNECTION (uint8_t *)(offsetof(eeprom_core_t, connection)) + +// Size of EEPROM being used for core data storage +#define EECONFIG_BASE_SIZE ((uint8_t)sizeof(eeprom_core_t)) + +#define EECONFIG_KB_DATABLOCK ((uint8_t *)(EECONFIG_BASE_SIZE)) +#define EECONFIG_USER_DATABLOCK ((uint8_t *)((EECONFIG_BASE_SIZE) + (EECONFIG_KB_DATA_SIZE))) + +// Size of EEPROM being used, other code can refer to this for available EEPROM +#define EECONFIG_SIZE ((EECONFIG_BASE_SIZE) + (EECONFIG_KB_DATA_SIZE) + (EECONFIG_USER_DATA_SIZE)) + +_Static_assert((intptr_t)EECONFIG_HANDEDNESS == 14, "EEPROM handedness offset is incorrect"); diff --git a/quantum/nvm/eeprom/nvm_eeprom_via_internal.h b/quantum/nvm/eeprom/nvm_eeprom_via_internal.h new file mode 100644 index 0000000000..bf0d38e2ac --- /dev/null +++ b/quantum/nvm/eeprom/nvm_eeprom_via_internal.h @@ -0,0 +1,22 @@ +// Copyright 2024 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +// Keyboard level code can change where VIA stores the magic. +// The magic is the build date YYMMDD encoded as BCD in 3 bytes, +// thus installing firmware built on a different date to the one +// already installed can be detected and the EEPROM data is reset. +// The only reason this is important is in case EEPROM usage changes +// and the EEPROM was not explicitly reset by bootmagic lite. +#ifndef VIA_EEPROM_MAGIC_ADDR +# define VIA_EEPROM_MAGIC_ADDR (EECONFIG_SIZE) +#endif + +#define VIA_EEPROM_LAYOUT_OPTIONS_ADDR (VIA_EEPROM_MAGIC_ADDR + 3) + +// The end of the EEPROM memory used by VIA +// By default, dynamic keymaps will start at this if there is no +// custom config +#define VIA_EEPROM_CUSTOM_CONFIG_ADDR (VIA_EEPROM_LAYOUT_OPTIONS_ADDR + VIA_EEPROM_LAYOUT_OPTIONS_SIZE) + +#define VIA_EEPROM_CONFIG_END (VIA_EEPROM_CUSTOM_CONFIG_ADDR + VIA_EEPROM_CUSTOM_CONFIG_SIZE) diff --git a/quantum/nvm/eeprom/nvm_via.c b/quantum/nvm/eeprom/nvm_via.c new file mode 100644 index 0000000000..5372791fb7 --- /dev/null +++ b/quantum/nvm/eeprom/nvm_via.c @@ -0,0 +1,77 @@ +// Copyright 2024 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "eeprom.h" +#include "util.h" +#include "via.h" +#include "nvm_via.h" +#include "nvm_eeprom_eeconfig_internal.h" +#include "nvm_eeprom_via_internal.h" + +void nvm_via_erase(void) { + // No-op, nvm_eeconfig_erase() will have already erased EEPROM if necessary. +} + +void nvm_via_read_magic(uint8_t *magic0, uint8_t *magic1, uint8_t *magic2) { + if (magic0) { + *magic0 = eeprom_read_byte((void *)VIA_EEPROM_MAGIC_ADDR + 0); + } + + if (magic1) { + *magic1 = eeprom_read_byte((void *)VIA_EEPROM_MAGIC_ADDR + 1); + } + + if (magic2) { + *magic2 = eeprom_read_byte((void *)VIA_EEPROM_MAGIC_ADDR + 2); + } +} + +void nvm_via_update_magic(uint8_t magic0, uint8_t magic1, uint8_t magic2) { + eeprom_update_byte((void *)VIA_EEPROM_MAGIC_ADDR + 0, magic0); + eeprom_update_byte((void *)VIA_EEPROM_MAGIC_ADDR + 1, magic1); + eeprom_update_byte((void *)VIA_EEPROM_MAGIC_ADDR + 2, magic2); +} + +uint32_t nvm_via_read_layout_options(void) { + uint32_t value = 0; + // Start at the most significant byte + void *source = (void *)(VIA_EEPROM_LAYOUT_OPTIONS_ADDR); + for (uint8_t i = 0; i < VIA_EEPROM_LAYOUT_OPTIONS_SIZE; i++) { + value = value << 8; + value |= eeprom_read_byte(source); + source++; + } + return value; +} + +void nvm_via_update_layout_options(uint32_t val) { + // Start at the least significant byte + void *target = (void *)(VIA_EEPROM_LAYOUT_OPTIONS_ADDR + VIA_EEPROM_LAYOUT_OPTIONS_SIZE - 1); + for (uint8_t i = 0; i < VIA_EEPROM_LAYOUT_OPTIONS_SIZE; i++) { + eeprom_update_byte(target, val & 0xFF); + val = val >> 8; + target--; + } +} + +uint32_t nvm_via_read_custom_config(void *buf, uint32_t offset, uint32_t length) { +#if VIA_EEPROM_CUSTOM_CONFIG_SIZE > 0 + void *ee_start = (void *)(uintptr_t)(VIA_EEPROM_CUSTOM_CONFIG_ADDR + offset); + void *ee_end = (void *)(uintptr_t)(VIA_EEPROM_CUSTOM_CONFIG_ADDR + MIN(VIA_EEPROM_CUSTOM_CONFIG_SIZE, offset + length)); + eeprom_read_block(buf, ee_start, ee_end - ee_start); + return ee_end - ee_start; +#else + return 0; +#endif +} + +uint32_t nvm_via_update_custom_config(const void *buf, uint32_t offset, uint32_t length) { +#if VIA_EEPROM_CUSTOM_CONFIG_SIZE > 0 + void *ee_start = (void *)(uintptr_t)(VIA_EEPROM_CUSTOM_CONFIG_ADDR + offset); + void *ee_end = (void *)(uintptr_t)(VIA_EEPROM_CUSTOM_CONFIG_ADDR + MIN(VIA_EEPROM_CUSTOM_CONFIG_SIZE, offset + length)); + eeprom_update_block(buf, ee_start, ee_end - ee_start); + return ee_end - ee_start; +#else + return 0; +#endif +} diff --git a/quantum/nvm/nvm_dynamic_keymap.h b/quantum/nvm/nvm_dynamic_keymap.h new file mode 100644 index 0000000000..d6e4aaee51 --- /dev/null +++ b/quantum/nvm/nvm_dynamic_keymap.h @@ -0,0 +1,27 @@ +// Copyright 2024 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include <stdint.h> +#include <stdbool.h> + +void nvm_dynamic_keymap_erase(void); +void nvm_dynamic_keymap_macro_erase(void); + +uint16_t nvm_dynamic_keymap_read_keycode(uint8_t layer, uint8_t row, uint8_t column); +void nvm_dynamic_keymap_update_keycode(uint8_t layer, uint8_t row, uint8_t column, uint16_t keycode); + +#ifdef ENCODER_MAP_ENABLE +uint16_t nvm_dynamic_keymap_read_encoder(uint8_t layer, uint8_t encoder_id, bool clockwise); +void nvm_dynamic_keymap_update_encoder(uint8_t layer, uint8_t encoder_id, bool clockwise, uint16_t keycode); +#endif // ENCODER_MAP_ENABLE + +void nvm_dynamic_keymap_read_buffer(uint32_t offset, uint32_t size, uint8_t *data); +void nvm_dynamic_keymap_update_buffer(uint32_t offset, uint32_t size, uint8_t *data); + +uint32_t nvm_dynamic_keymap_macro_size(void); + +void nvm_dynamic_keymap_macro_read_buffer(uint32_t offset, uint32_t size, uint8_t *data); +void nvm_dynamic_keymap_macro_update_buffer(uint32_t offset, uint32_t size, uint8_t *data); + +void nvm_dynamic_keymap_macro_reset(void); diff --git a/quantum/nvm/nvm_eeconfig.h b/quantum/nvm/nvm_eeconfig.h new file mode 100644 index 0000000000..40827361ca --- /dev/null +++ b/quantum/nvm/nvm_eeconfig.h @@ -0,0 +1,111 @@ +// Copyright 2024 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include <stdint.h> +#include <stdbool.h> +#include "action_layer.h" // layer_state_t + +#ifndef EECONFIG_MAGIC_NUMBER +# define EECONFIG_MAGIC_NUMBER (uint16_t)0xFEE3 // When changing, decrement this value to avoid future re-init issues +#endif +#define EECONFIG_MAGIC_NUMBER_OFF (uint16_t)0xFFFF + +void nvm_eeconfig_erase(void); + +bool nvm_eeconfig_is_enabled(void); +bool nvm_eeconfig_is_disabled(void); + +void nvm_eeconfig_enable(void); +void nvm_eeconfig_disable(void); + +typedef union debug_config_t debug_config_t; +void nvm_eeconfig_read_debug(debug_config_t *debug_config); +void nvm_eeconfig_update_debug(const debug_config_t *debug_config); + +layer_state_t nvm_eeconfig_read_default_layer(void); +void nvm_eeconfig_update_default_layer(layer_state_t state); + +typedef union keymap_config_t keymap_config_t; +void nvm_eeconfig_read_keymap(keymap_config_t *keymap_config); +void nvm_eeconfig_update_keymap(const keymap_config_t *keymap_config); + +#ifdef AUDIO_ENABLE +typedef union audio_config_t audio_config_t; +void nvm_eeconfig_read_audio(audio_config_t *audio_config); +void nvm_eeconfig_update_audio(const audio_config_t *audio_config); +#endif // AUDIO_ENABLE + +#ifdef UNICODE_COMMON_ENABLE +typedef union unicode_config_t unicode_config_t; +void nvm_eeconfig_read_unicode_mode(unicode_config_t *unicode_config); +void nvm_eeconfig_update_unicode_mode(const unicode_config_t *unicode_config); +#endif // UNICODE_COMMON_ENABLE + +#ifdef BACKLIGHT_ENABLE +typedef union backlight_config_t backlight_config_t; +void nvm_eeconfig_read_backlight(backlight_config_t *backlight_config); +void nvm_eeconfig_update_backlight(const backlight_config_t *backlight_config); +#endif // BACKLIGHT_ENABLE + +#ifdef STENO_ENABLE +uint8_t nvm_eeconfig_read_steno_mode(void); +void nvm_eeconfig_update_steno_mode(uint8_t val); +#endif // STENO_ENABLE + +#ifdef RGB_MATRIX_ENABLE +typedef union rgb_config_t rgb_config_t; +void nvm_eeconfig_read_rgb_matrix(rgb_config_t *rgb_matrix_config); +void nvm_eeconfig_update_rgb_matrix(const rgb_config_t *rgb_matrix_config); +#endif + +#ifdef LED_MATRIX_ENABLE +typedef union led_eeconfig_t led_eeconfig_t; +void nvm_eeconfig_read_led_matrix(led_eeconfig_t *led_matrix_config); +void nvm_eeconfig_update_led_matrix(const led_eeconfig_t *led_matrix_config); +#endif // LED_MATRIX_ENABLE + +#ifdef RGBLIGHT_ENABLE +typedef union rgblight_config_t rgblight_config_t; +void nvm_eeconfig_read_rgblight(rgblight_config_t *rgblight_config); +void nvm_eeconfig_update_rgblight(const rgblight_config_t *rgblight_config); +#endif // RGBLIGHT_ENABLE + +#if (EECONFIG_KB_DATA_SIZE) == 0 +uint32_t nvm_eeconfig_read_kb(void); +void nvm_eeconfig_update_kb(uint32_t val); +#endif // (EECONFIG_KB_DATA_SIZE) == 0 + +#if (EECONFIG_USER_DATA_SIZE) == 0 +uint32_t nvm_eeconfig_read_user(void); +void nvm_eeconfig_update_user(uint32_t val); +#endif // (EECONFIG_USER_DATA_SIZE) == 0 + +#ifdef HAPTIC_ENABLE +typedef union haptic_config_t haptic_config_t; +void nvm_eeconfig_read_haptic(haptic_config_t *haptic_config); +void nvm_eeconfig_update_haptic(const haptic_config_t *haptic_config); +#endif // HAPTIC_ENABLE + +#ifdef CONNECTION_ENABLE +typedef union connection_config_t connection_config_t; +void nvm_eeconfig_read_connection(connection_config_t *config); +void nvm_eeconfig_update_connection(const connection_config_t *config); +#endif // CONNECTION_ENABLE + +bool nvm_eeconfig_read_handedness(void); +void nvm_eeconfig_update_handedness(bool val); + +#if (EECONFIG_KB_DATA_SIZE) > 0 +bool nvm_eeconfig_is_kb_datablock_valid(void); +uint32_t nvm_eeconfig_read_kb_datablock(void *data, uint32_t offset, uint32_t length); +uint32_t nvm_eeconfig_update_kb_datablock(const void *data, uint32_t offset, uint32_t length); +void nvm_eeconfig_init_kb_datablock(void); +#endif // (EECONFIG_KB_DATA_SIZE) > 0 + +#if (EECONFIG_USER_DATA_SIZE) > 0 +bool nvm_eeconfig_is_user_datablock_valid(void); +uint32_t nvm_eeconfig_read_user_datablock(void *data, uint32_t offset, uint32_t length); +uint32_t nvm_eeconfig_update_user_datablock(const void *data, uint32_t offset, uint32_t length); +void nvm_eeconfig_init_user_datablock(void); +#endif // (EECONFIG_USER_DATA_SIZE) > 0 diff --git a/quantum/nvm/nvm_via.h b/quantum/nvm/nvm_via.h new file mode 100644 index 0000000000..90c5e67421 --- /dev/null +++ b/quantum/nvm/nvm_via.h @@ -0,0 +1,17 @@ +// Copyright 2024 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include <stdint.h> +#include <stdbool.h> + +void nvm_via_erase(void); + +void nvm_via_read_magic(uint8_t *magic0, uint8_t *magic1, uint8_t *magic2); +void nvm_via_update_magic(uint8_t magic0, uint8_t magic1, uint8_t magic2); + +uint32_t nvm_via_read_layout_options(void); +void nvm_via_update_layout_options(uint32_t val); + +uint32_t nvm_via_read_custom_config(void *buf, uint32_t offset, uint32_t length); +uint32_t nvm_via_update_custom_config(const void *buf, uint32_t offset, uint32_t length); diff --git a/quantum/nvm/readme.md b/quantum/nvm/readme.md new file mode 100644 index 0000000000..0731695e92 --- /dev/null +++ b/quantum/nvm/readme.md @@ -0,0 +1,30 @@ +# Non-volatile Memory - Data Repositories + +This area is intentionally structured in the following way: + +``` +╰- quantum + ╰- nvm + ├- readme.md + ├- rules.mk + | + ├- nvm_eeconfig.h + ├- nvm_<<system>>.h + | + ├- eeprom + | ├- nvm_eeconfig.c + | ├- nvm_<<system>>.c + | ╰- ... + | + ├- <<another provider>> + | ├- nvm_eeconfig.c + | ├- nvm_<<system>>.c + | ╰- ... + ╰- ... +``` + +At the base `nvm` level, for every QMK core system which requires persistence there must be a corresponding `nvm_<<system>>.h` header file. This provides the data repository API to the "owner" system, and allows the underlying data persistence mechanism to be abstracted away from upper code. Any conversion to/from a `.raw` field should occur inside the `nvm_<<system>>.c` layer, with the API using values, such as structs or unions exposed to the rest of QMK. + +Each `nvm` "provider" is a corresponding child directory consisting of its name, such as `eeprom`, and corresponding `nvm_<<system>>.c` implementation files which provide the concrete implementation of the upper `nvm_<<system>>.h`. + +New systems requiring persistence can add the corresponding `nvm_<<system>>.h` file, and in most circumstances must also implement equivalent `nvm_<<system>>.c` files for every `nvm` provider. If persistence is not possible for that system, a `nvm_<<system>>.c` file with simple stubs which ignore writes and provide sane defaults must be used instead.
\ No newline at end of file diff --git a/quantum/nvm/rules.mk b/quantum/nvm/rules.mk new file mode 100644 index 0000000000..c9c1fabfd4 --- /dev/null +++ b/quantum/nvm/rules.mk @@ -0,0 +1,31 @@ +# Copyright 2024 Nick Brassel (@tzarc) +# SPDX-License-Identifier: GPL-2.0-or-later + +VPATH += $(QUANTUM_DIR)/nvm + +VALID_NVM_DRIVERS := eeprom custom none + +NVM_DRIVER ?= eeprom + +ifeq ($(filter $(NVM_DRIVER),$(VALID_NVM_DRIVERS)),) + $(call CATASTROPHIC_ERROR,Invalid NVM_DRIVER,NVM_DRIVER="$(NVM_DRIVER)" is not a valid NVM driver) +else + + # If we don't want one, fake it with transient eeprom. + ifeq ($(NVM_DRIVER),none) + NVM_DRIVER := eeprom + EEPROM_DRIVER := transient + endif + + NVM_DRIVER_UPPER := $(shell echo $(NVM_DRIVER) | tr '[:lower:]' '[:upper:]') + NVM_DRIVER_LOWER := $(shell echo $(NVM_DRIVER) | tr '[:upper:]' '[:lower:]') + + OPT_DEFS += -DNVM_DRIVER_$(NVM_DRIVER_UPPER) -DNVM_DRIVER="$(NVM_DRIVER)" + + ifneq ("$(wildcard $(QUANTUM_DIR)/nvm/$(NVM_DRIVER_LOWER))","") + COMMON_VPATH += $(QUANTUM_DIR)/nvm/$(NVM_DRIVER_LOWER) + endif + + QUANTUM_SRC += nvm_eeconfig.c + +endif diff --git a/quantum/os_detection.h b/quantum/os_detection.h index 98a8e805e4..e9e7b25f1d 100644 --- a/quantum/os_detection.h +++ b/quantum/os_detection.h @@ -43,6 +43,9 @@ void slave_update_detected_host_os(os_variant_t os); #endif #ifdef OS_DETECTION_DEBUG_ENABLE +# if defined(DYNAMIC_KEYMAP_ENABLE) || defined(VIA_ENABLE) +# error Cannot enable OS Detection debug mode simultaneously with DYNAMIC_KEYMAP or VIA +# endif void print_stored_setups(void); void store_setups_in_eeprom(void); #endif diff --git a/quantum/pointing_device/pointing_device.c b/quantum/pointing_device/pointing_device.c index cac2875fc8..5ee65c9c61 100644 --- a/quantum/pointing_device/pointing_device.c +++ b/quantum/pointing_device/pointing_device.c @@ -25,6 +25,10 @@ # include "mousekey.h" #endif +#ifdef POINTING_DEVICE_HIRES_SCROLL_ENABLE +# include "usb_descriptor_common.h" +#endif + #if (defined(POINTING_DEVICE_ROTATION_90) + defined(POINTING_DEVICE_ROTATION_180) + defined(POINTING_DEVICE_ROTATION_270)) > 1 # error More than one rotation selected. This is not supported. #endif @@ -78,6 +82,9 @@ uint16_t pointing_device_get_shared_cpi(void) { static report_mouse_t local_mouse_report = {}; static bool pointing_device_force_send = false; +#ifdef POINTING_DEVICE_HIRES_SCROLL_ENABLE +static uint16_t hires_scroll_resolution; +#endif #define POINTING_DEVICE_DRIVER_CONCAT(name) name##_pointing_device_driver #define POINTING_DEVICE_DRIVER(name) POINTING_DEVICE_DRIVER_CONCAT(name) @@ -176,6 +183,12 @@ __attribute__((weak)) void pointing_device_init(void) { # endif #endif } +#ifdef POINTING_DEVICE_HIRES_SCROLL_ENABLE + hires_scroll_resolution = POINTING_DEVICE_HIRES_SCROLL_MULTIPLIER; + for (int i = 0; i < POINTING_DEVICE_HIRES_SCROLL_EXPONENT; i++) { + hires_scroll_resolution *= 10; + } +#endif pointing_device_init_kb(); pointing_device_init_user(); @@ -404,10 +417,10 @@ void pointing_device_set_cpi_on_side(bool left, uint16_t cpi) { * @return mouse_hv_report_t clamped value */ static inline mouse_hv_report_t pointing_device_hv_clamp(hv_clamp_range_t value) { - if (value < HV_REPORT_MIN) { - return HV_REPORT_MIN; - } else if (value > HV_REPORT_MAX) { - return HV_REPORT_MAX; + if (value < MOUSE_REPORT_HV_MIN) { + return MOUSE_REPORT_HV_MIN; + } else if (value > MOUSE_REPORT_HV_MAX) { + return MOUSE_REPORT_HV_MAX; } else { return value; } @@ -420,10 +433,10 @@ static inline mouse_hv_report_t pointing_device_hv_clamp(hv_clamp_range_t value) * @return mouse_xy_report_t clamped value */ static inline mouse_xy_report_t pointing_device_xy_clamp(xy_clamp_range_t value) { - if (value < XY_REPORT_MIN) { - return XY_REPORT_MIN; - } else if (value > XY_REPORT_MAX) { - return XY_REPORT_MAX; + if (value < MOUSE_REPORT_XY_MIN) { + return MOUSE_REPORT_XY_MIN; + } else if (value > MOUSE_REPORT_XY_MAX) { + return MOUSE_REPORT_XY_MAX; } else { return value; } @@ -523,3 +536,9 @@ __attribute__((weak)) void pointing_device_keycode_handler(uint16_t keycode, boo pointing_device_send(); } } + +#ifdef POINTING_DEVICE_HIRES_SCROLL_ENABLE +uint16_t pointing_device_get_hires_scroll_resolution(void) { + return hires_scroll_resolution; +} +#endif
\ No newline at end of file diff --git a/quantum/pointing_device/pointing_device.h b/quantum/pointing_device/pointing_device.h index 72188c977d..d8b583c87e 100644 --- a/quantum/pointing_device/pointing_device.h +++ b/quantum/pointing_device/pointing_device.h @@ -92,27 +92,19 @@ typedef enum { } pointing_device_buttons_t; #ifdef MOUSE_EXTENDED_REPORT -# define XY_REPORT_MIN INT16_MIN -# define XY_REPORT_MAX INT16_MAX typedef int32_t xy_clamp_range_t; #else -# define XY_REPORT_MIN INT8_MIN -# define XY_REPORT_MAX INT8_MAX typedef int16_t xy_clamp_range_t; #endif #ifdef WHEEL_EXTENDED_REPORT -# define HV_REPORT_MIN INT16_MIN -# define HV_REPORT_MAX INT16_MAX typedef int32_t hv_clamp_range_t; #else -# define HV_REPORT_MIN INT8_MIN -# define HV_REPORT_MAX INT8_MAX typedef int16_t hv_clamp_range_t; #endif #define CONSTRAIN_HID(amt) ((amt) < INT8_MIN ? INT8_MIN : ((amt) > INT8_MAX ? INT8_MAX : (amt))) -#define CONSTRAIN_HID_XY(amt) ((amt) < XY_REPORT_MIN ? XY_REPORT_MIN : ((amt) > XY_REPORT_MAX ? XY_REPORT_MAX : (amt))) +#define CONSTRAIN_HID_XY(amt) ((amt) < MOUSE_REPORT_XY_MIN ? MOUSE_REPORT_XY_MIN : ((amt) > MOUSE_REPORT_XY_MAX ? MOUSE_REPORT_XY_MAX : (amt))) void pointing_device_init(void); bool pointing_device_task(void); @@ -130,6 +122,10 @@ uint8_t pointing_device_handle_buttons(uint8_t buttons, bool pressed, poi report_mouse_t pointing_device_adjust_by_defines(report_mouse_t mouse_report); void pointing_device_keycode_handler(uint16_t keycode, bool pressed); +#ifdef POINTING_DEVICE_HIRES_SCROLL_ENABLE +uint16_t pointing_device_get_hires_scroll_resolution(void); +#endif + #if defined(SPLIT_POINTING_ENABLE) void pointing_device_set_shared_report(report_mouse_t report); uint16_t pointing_device_get_shared_cpi(void); diff --git a/quantum/process_keycode/process_autocorrect.c b/quantum/process_keycode/process_autocorrect.c index b7f9132acf..0cde520778 100644 --- a/quantum/process_keycode/process_autocorrect.c +++ b/quantum/process_keycode/process_autocorrect.c @@ -38,7 +38,7 @@ bool autocorrect_is_enabled(void) { */ void autocorrect_enable(void) { keymap_config.autocorrect_enable = true; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } /** @@ -48,7 +48,7 @@ void autocorrect_enable(void) { void autocorrect_disable(void) { keymap_config.autocorrect_enable = false; typo_buffer_size = 0; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } /** @@ -58,7 +58,7 @@ void autocorrect_disable(void) { void autocorrect_toggle(void) { keymap_config.autocorrect_enable = !keymap_config.autocorrect_enable; typo_buffer_size = 0; - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); } /** diff --git a/quantum/process_keycode/process_caps_word.c b/quantum/process_keycode/process_caps_word.c index b8fb868c6d..8ab66cc521 100644 --- a/quantum/process_keycode/process_caps_word.c +++ b/quantum/process_keycode/process_caps_word.c @@ -160,8 +160,13 @@ bool process_caps_word(uint16_t keycode, keyrecord_t* record) { case QK_TOGGLE_LAYER ... QK_TOGGLE_LAYER_MAX: case QK_LAYER_TAP_TOGGLE ... QK_LAYER_TAP_TOGGLE_MAX: case QK_ONE_SHOT_LAYER ... QK_ONE_SHOT_LAYER_MAX: +#ifdef TRI_LAYER_ENABLE // Ignore Tri Layer keys. case QK_TRI_LAYER_LOWER ... QK_TRI_LAYER_UPPER: - // Ignore AltGr. +#endif // TRI_LAYER_ENABLE +#ifdef LAYER_LOCK_ENABLE // Ignore Layer Lock key. + case QK_LAYER_LOCK: +#endif // LAYER_LOCK_ENABLE + // Ignore AltGr. case KC_RALT: case OSM(MOD_RALT): return true; diff --git a/quantum/process_keycode/process_clicky.c b/quantum/process_keycode/process_clicky.c index 82000db9b3..f50761268a 100644 --- a/quantum/process_keycode/process_clicky.c +++ b/quantum/process_keycode/process_clicky.c @@ -66,17 +66,17 @@ void clicky_freq_reset(void) { void clicky_toggle(void) { audio_config.clicky_enable ^= 1; - eeconfig_update_audio(audio_config.raw); + eeconfig_update_audio(&audio_config); } void clicky_on(void) { audio_config.clicky_enable = 1; - eeconfig_update_audio(audio_config.raw); + eeconfig_update_audio(&audio_config); } void clicky_off(void) { audio_config.clicky_enable = 0; - eeconfig_update_audio(audio_config.raw); + eeconfig_update_audio(&audio_config); } bool is_clicky_on(void) { diff --git a/quantum/process_keycode/process_connection.c b/quantum/process_keycode/process_connection.c index b0e230d680..501529ede7 100644 --- a/quantum/process_keycode/process_connection.c +++ b/quantum/process_keycode/process_connection.c @@ -1,24 +1,34 @@ // Copyright 2024 Nick Brassel (@tzarc) // SPDX-License-Identifier: GPL-2.0-or-later -#include "outputselect.h" +#include "connection.h" #include "process_connection.h" bool process_connection(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { switch (keycode) { case QK_OUTPUT_NEXT: - set_output(OUTPUT_AUTO); // This should cycle through the outputs going forward. Ensure `docs/keycodes.md`, `docs/features/bluetooth.md` are updated when it does. + connection_next_host(); + return false; + case QK_OUTPUT_PREV: + connection_prev_host(); + return false; + + case QK_OUTPUT_AUTO: + connection_set_host(CONNECTION_HOST_AUTO); + return false; + case QK_OUTPUT_NONE: + connection_set_host(CONNECTION_HOST_NONE); return false; case QK_OUTPUT_USB: - set_output(OUTPUT_USB); + connection_set_host(CONNECTION_HOST_USB); return false; case QK_OUTPUT_BLUETOOTH: - set_output(OUTPUT_BLUETOOTH); + connection_set_host(CONNECTION_HOST_BLUETOOTH); return false; - - case QK_OUTPUT_PREV: - case QK_OUTPUT_NONE: case QK_OUTPUT_2P4GHZ: + connection_set_host(CONNECTION_HOST_2P4GHZ); + return false; + case QK_BLUETOOTH_PROFILE_NEXT: case QK_BLUETOOTH_PROFILE_PREV: case QK_BLUETOOTH_UNPAIR: diff --git a/quantum/process_keycode/process_leader.c b/quantum/process_keycode/process_leader.c index ca017a577d..a5466c513c 100644 --- a/quantum/process_keycode/process_leader.c +++ b/quantum/process_keycode/process_leader.c @@ -22,11 +22,7 @@ bool process_leader(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { if (leader_sequence_active() && !leader_sequence_timed_out()) { #ifndef LEADER_KEY_STRICT_KEY_PROCESSING - if (IS_QK_MOD_TAP(keycode)) { - keycode = QK_MOD_TAP_GET_TAP_KEYCODE(keycode); - } else if (IS_QK_LAYER_TAP(keycode)) { - keycode = QK_LAYER_TAP_GET_TAP_KEYCODE(keycode); - } + keycode = get_tap_keycode(keycode); #endif if (!leader_sequence_add(keycode)) { diff --git a/quantum/process_keycode/process_magic.c b/quantum/process_keycode/process_magic.c index 3b35884d68..d5280105de 100644 --- a/quantum/process_keycode/process_magic.c +++ b/quantum/process_keycode/process_magic.c @@ -47,7 +47,7 @@ bool process_magic(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { if (IS_MAGIC_KEYCODE(keycode)) { /* keymap config */ - keymap_config.raw = eeconfig_read_keymap(); + eeconfig_read_keymap(&keymap_config); switch (keycode) { case QK_MAGIC_SWAP_CONTROL_CAPS_LOCK: keymap_config.swap_control_capslock = true; @@ -187,7 +187,7 @@ bool process_magic(uint16_t keycode, keyrecord_t *record) { break; } - eeconfig_update_keymap(keymap_config.raw); + eeconfig_update_keymap(&keymap_config); clear_keyboard(); // clear to prevent stuck keys return false; diff --git a/quantum/process_keycode/process_repeat_key.c b/quantum/process_keycode/process_repeat_key.c index 73f4ddedcf..fdeed4f466 100644 --- a/quantum/process_keycode/process_repeat_key.c +++ b/quantum/process_keycode/process_repeat_key.c @@ -41,7 +41,10 @@ static bool remember_last_key(uint16_t keycode, keyrecord_t* record, uint8_t* re #ifdef TRI_LAYER_ENABLE // Ignore Tri Layer keys. case QK_TRI_LAYER_LOWER: case QK_TRI_LAYER_UPPER: -#endif // TRI_LAYER_ENABLE +#endif // TRI_LAYER_ENABLE +#ifdef LAYER_LOCK_ENABLE // Ignore Layer Lock key. + case QK_LAYER_LOCK: +#endif // LAYER_LOCK_ENABLE return false; // Ignore hold events on tap-hold keys. diff --git a/quantum/process_keycode/process_steno.c b/quantum/process_keycode/process_steno.c index c491d6f1d8..4789461352 100644 --- a/quantum/process_keycode/process_steno.c +++ b/quantum/process_keycode/process_steno.c @@ -20,9 +20,6 @@ #ifdef VIRTSER_ENABLE # include "virtser.h" #endif -#ifdef STENO_ENABLE_ALL -# include "eeprom.h" -#endif // All steno keys that have been pressed to form this chord, // stored in MAX_STROKE_SIZE groups of 8-bit arrays. @@ -128,13 +125,13 @@ static const uint16_t combinedmap_second[] PROGMEM = {STN_S2, STN_KL, STN_WL, ST #ifdef STENO_ENABLE_ALL void steno_init(void) { - mode = eeprom_read_byte(EECONFIG_STENOMODE); + mode = eeconfig_read_steno_mode(); } void steno_set_mode(steno_mode_t new_mode) { steno_clear_chord(); mode = new_mode; - eeprom_update_byte(EECONFIG_STENOMODE, mode); + eeconfig_update_steno_mode(mode); } #endif // STENO_ENABLE_ALL diff --git a/quantum/quantum.c b/quantum/quantum.c index adb14d64b6..0bb6ee0a91 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c @@ -20,7 +20,7 @@ # include "process_backlight.h" #endif -#ifdef BLUETOOTH_ENABLE +#ifdef CONNECTION_ENABLE # include "process_connection.h" #endif @@ -436,7 +436,7 @@ bool process_record_quantum(keyrecord_t *record) { #ifdef LAYER_LOCK_ENABLE process_layer_lock(keycode, record) && #endif -#ifdef BLUETOOTH_ENABLE +#ifdef CONNECTION_ENABLE process_connection(keycode, record) && #endif true)) { diff --git a/quantum/quantum.h b/quantum/quantum.h index 59a415ead4..3a994e9a03 100644 --- a/quantum/quantum.h +++ b/quantum/quantum.h @@ -39,6 +39,7 @@ #include "keymap_common.h" #include "quantum_keycodes.h" #include "keycode_config.h" +#include "keycode_string.h" #include "action_layer.h" #include "eeconfig.h" #include "bootloader.h" diff --git a/quantum/rgb_matrix/animations/rgb_matrix_effects.inc b/quantum/rgb_matrix/animations/rgb_matrix_effects.inc index a02238a2d1..e8b7a2bcde 100644 --- a/quantum/rgb_matrix/animations/rgb_matrix_effects.inc +++ b/quantum/rgb_matrix/animations/rgb_matrix_effects.inc @@ -42,4 +42,4 @@ #include "starlight_anim.h" #include "starlight_dual_sat_anim.h" #include "starlight_dual_hue_anim.h" -#include "riverflow_anim.h"
\ No newline at end of file +#include "riverflow_anim.h" diff --git a/quantum/rgb_matrix/rgb_matrix.c b/quantum/rgb_matrix/rgb_matrix.c index 484d177546..3fc9085f06 100644 --- a/quantum/rgb_matrix/rgb_matrix.c +++ b/quantum/rgb_matrix/rgb_matrix.c @@ -18,7 +18,6 @@ #include "rgb_matrix.h" #include "progmem.h" -#include "eeprom.h" #include "eeconfig.h" #include "keyboard.h" #include "sync_timer.h" @@ -88,9 +87,9 @@ static last_hit_t last_hit_buffer; const uint8_t k_rgb_matrix_split[2] = RGB_MATRIX_SPLIT; #endif -EECONFIG_DEBOUNCE_HELPER(rgb_matrix, EECONFIG_RGB_MATRIX, rgb_matrix_config); +EECONFIG_DEBOUNCE_HELPER(rgb_matrix, rgb_matrix_config); -void eeconfig_update_rgb_matrix(void) { +void eeconfig_force_flush_rgb_matrix(void) { eeconfig_flush_rgb_matrix(true); } diff --git a/quantum/rgb_matrix/rgb_matrix.h b/quantum/rgb_matrix/rgb_matrix.h index 33f7e06a63..e00e3927c7 100644 --- a/quantum/rgb_matrix/rgb_matrix.h +++ b/quantum/rgb_matrix/rgb_matrix.h @@ -140,7 +140,7 @@ enum rgb_matrix_effects { }; void eeconfig_update_rgb_matrix_default(void); -void eeconfig_update_rgb_matrix(void); +void eeconfig_force_flush_rgb_matrix(void); uint8_t rgb_matrix_map_row_column_to_led_kb(uint8_t row, uint8_t column, uint8_t *led_i); uint8_t rgb_matrix_map_row_column_to_led(uint8_t row, uint8_t column, uint8_t *led_i); @@ -215,7 +215,7 @@ void rgb_matrix_set_flags_noeeprom(led_flags_t flags); void rgb_matrix_update_pwm_buffers(void); #ifndef RGBLIGHT_ENABLE -# define eeconfig_update_rgblight_current eeconfig_update_rgb_matrix +# define eeconfig_update_rgblight_current eeconfig_force_flush_rgb_matrix # define rgblight_reload_from_eeprom rgb_matrix_reload_from_eeprom # define rgblight_toggle rgb_matrix_toggle # define rgblight_toggle_noeeprom rgb_matrix_toggle_noeeprom diff --git a/quantum/rgb_matrix/rgb_matrix_types.h b/quantum/rgb_matrix/rgb_matrix_types.h index 0834a7067c..62005ebea9 100644 --- a/quantum/rgb_matrix/rgb_matrix_types.h +++ b/quantum/rgb_matrix/rgb_matrix_types.h @@ -73,7 +73,7 @@ typedef struct PACKED { uint8_t flags[RGB_MATRIX_LED_COUNT]; } led_config_t; -typedef union { +typedef union rgb_config_t { uint64_t raw; struct PACKED { uint8_t enable : 2; diff --git a/quantum/rgblight/rgblight.c b/quantum/rgblight/rgblight.c index ddccc9bae3..83f97c8114 100644 --- a/quantum/rgblight/rgblight.c +++ b/quantum/rgblight/rgblight.c @@ -24,9 +24,7 @@ #include "util.h" #include "led_tables.h" #include <lib/lib8tion/lib8tion.h> -#ifdef EEPROM_ENABLE -# include "eeprom.h" -#endif +#include "eeconfig.h" #ifdef RGBLIGHT_SPLIT /* for split keyboard */ @@ -176,24 +174,9 @@ void rgblight_check_config(void) { } } -uint64_t eeconfig_read_rgblight(void) { -#ifdef EEPROM_ENABLE - return (uint64_t)((eeprom_read_dword(EECONFIG_RGBLIGHT)) | ((uint64_t)eeprom_read_byte(EECONFIG_RGBLIGHT_EXTENDED) << 32)); -#else - return 0; -#endif -} - -void eeconfig_update_rgblight(uint64_t val) { -#ifdef EEPROM_ENABLE - rgblight_check_config(); - eeprom_update_dword(EECONFIG_RGBLIGHT, val & 0xFFFFFFFF); - eeprom_update_byte(EECONFIG_RGBLIGHT_EXTENDED, (val >> 32) & 0xFF); -#endif -} - void eeconfig_update_rgblight_current(void) { - eeconfig_update_rgblight(rgblight_config.raw); + rgblight_check_config(); + eeconfig_update_rgblight(&rgblight_config); } void eeconfig_update_rgblight_default(void) { @@ -205,7 +188,7 @@ void eeconfig_update_rgblight_default(void) { rgblight_config.val = RGBLIGHT_DEFAULT_VAL; rgblight_config.speed = RGBLIGHT_DEFAULT_SPD; RGBLIGHT_SPLIT_SET_CHANGE_MODEHSVS; - eeconfig_update_rgblight(rgblight_config.raw); + eeconfig_update_rgblight(&rgblight_config); } void eeconfig_debug_rgblight(void) { @@ -228,12 +211,12 @@ void rgblight_init(void) { } dprintf("rgblight_init start!\n"); - rgblight_config.raw = eeconfig_read_rgblight(); + eeconfig_read_rgblight(&rgblight_config); RGBLIGHT_SPLIT_SET_CHANGE_MODEHSVS; if (!rgblight_config.mode) { dprintf("rgblight_init rgblight_config.mode = 0. Write default values to EEPROM.\n"); eeconfig_update_rgblight_default(); - rgblight_config.raw = eeconfig_read_rgblight(); + eeconfig_read_rgblight(&rgblight_config); } rgblight_check_config(); @@ -252,7 +235,7 @@ void rgblight_init(void) { void rgblight_reload_from_eeprom(void) { /* Reset back to what we have in eeprom */ - rgblight_config.raw = eeconfig_read_rgblight(); + eeconfig_read_rgblight(&rgblight_config); RGBLIGHT_SPLIT_SET_CHANGE_MODEHSVS; rgblight_check_config(); eeconfig_debug_rgblight(); // display current eeprom values @@ -341,7 +324,7 @@ void rgblight_mode_eeprom_helper(uint8_t mode, bool write_to_eeprom) { } RGBLIGHT_SPLIT_SET_CHANGE_MODE; if (write_to_eeprom) { - eeconfig_update_rgblight(rgblight_config.raw); + eeconfig_update_rgblight(&rgblight_config); dprintf("rgblight mode [EEPROM]: %u\n", rgblight_config.mode); } else { dprintf("rgblight mode [NOEEPROM]: %u\n", rgblight_config.mode); @@ -386,7 +369,7 @@ void rgblight_toggle_noeeprom(void) { void rgblight_enable(void) { rgblight_config.enable = 1; // No need to update EEPROM here. rgblight_mode() will do that, actually - // eeconfig_update_rgblight(rgblight_config.raw); + // eeconfig_update_rgblight(&rgblight_config); dprintf("rgblight enable [EEPROM]: rgblight_config.enable = %u\n", rgblight_config.enable); rgblight_mode(rgblight_config.mode); } @@ -399,7 +382,7 @@ void rgblight_enable_noeeprom(void) { void rgblight_disable(void) { rgblight_config.enable = 0; - eeconfig_update_rgblight(rgblight_config.raw); + eeconfig_update_rgblight(&rgblight_config); dprintf("rgblight disable [EEPROM]: rgblight_config.enable = %u\n", rgblight_config.enable); rgblight_timer_disable(); RGBLIGHT_SPLIT_SET_CHANGE_MODE; @@ -487,7 +470,7 @@ void rgblight_increase_speed_helper(bool write_to_eeprom) { if (rgblight_config.speed < 3) rgblight_config.speed++; // RGBLIGHT_SPLIT_SET_CHANGE_HSVS; // NEED? if (write_to_eeprom) { - eeconfig_update_rgblight(rgblight_config.raw); + eeconfig_update_rgblight(&rgblight_config); } } void rgblight_increase_speed(void) { @@ -501,7 +484,7 @@ void rgblight_decrease_speed_helper(bool write_to_eeprom) { if (rgblight_config.speed > 0) rgblight_config.speed--; // RGBLIGHT_SPLIT_SET_CHANGE_HSVS; // NEED?? if (write_to_eeprom) { - eeconfig_update_rgblight(rgblight_config.raw); + eeconfig_update_rgblight(&rgblight_config); } } void rgblight_decrease_speed(void) { @@ -585,7 +568,7 @@ void rgblight_sethsv_eeprom_helper(uint8_t hue, uint8_t sat, uint8_t val, bool w rgblight_config.sat = sat; rgblight_config.val = val; if (write_to_eeprom) { - eeconfig_update_rgblight(rgblight_config.raw); + eeconfig_update_rgblight(&rgblight_config); dprintf("rgblight set hsv [EEPROM]: %u,%u,%u\n", rgblight_config.hue, rgblight_config.sat, rgblight_config.val); } else { dprintf("rgblight set hsv [NOEEPROM]: %u,%u,%u\n", rgblight_config.hue, rgblight_config.sat, rgblight_config.val); @@ -608,7 +591,7 @@ uint8_t rgblight_get_speed(void) { void rgblight_set_speed_eeprom_helper(uint8_t speed, bool write_to_eeprom) { rgblight_config.speed = speed; if (write_to_eeprom) { - eeconfig_update_rgblight(rgblight_config.raw); + eeconfig_update_rgblight(&rgblight_config); dprintf("rgblight set speed [EEPROM]: %u\n", rgblight_config.speed); } else { dprintf("rgblight set speed [NOEEPROM]: %u\n", rgblight_config.speed); diff --git a/quantum/rgblight/rgblight.h b/quantum/rgblight/rgblight.h index f4b6e621e4..f5fd450d4c 100644 --- a/quantum/rgblight/rgblight.h +++ b/quantum/rgblight/rgblight.h @@ -168,7 +168,6 @@ enum RGBLIGHT_EFFECT_MODE { #include <stdbool.h> #include "rgblight_drivers.h" #include "progmem.h" -#include "eeconfig.h" #include "color.h" #ifdef RGBLIGHT_LAYERS @@ -248,7 +247,7 @@ extern const uint16_t RGBLED_RGBTEST_INTERVALS[1] PROGMEM; extern const uint8_t RGBLED_TWINKLE_INTERVALS[3] PROGMEM; extern bool is_rgblight_initialized; -typedef union { +typedef union rgblight_config_t { uint64_t raw; struct { bool enable : 1; @@ -370,8 +369,6 @@ void rgblight_suspend(void); void rgblight_wakeup(void); uint64_t rgblight_read_qword(void); void rgblight_update_qword(uint64_t qword); -uint64_t eeconfig_read_rgblight(void); -void eeconfig_update_rgblight(uint64_t val); void eeconfig_update_rgblight_current(void); void eeconfig_update_rgblight_default(void); void eeconfig_debug_rgblight(void); diff --git a/quantum/split_common/split_util.h b/quantum/split_common/split_util.h index f83b05b6a6..6f4c4dc660 100644 --- a/quantum/split_common/split_util.h +++ b/quantum/split_common/split_util.h @@ -15,4 +15,4 @@ bool is_transport_connected(void); void split_watchdog_update(bool done); void split_watchdog_task(void); -bool split_watchdog_check(void);
\ No newline at end of file +bool split_watchdog_check(void); diff --git a/quantum/unicode/unicode.c b/quantum/unicode/unicode.c index 78a4cad585..dff1d43fb4 100644 --- a/quantum/unicode/unicode.c +++ b/quantum/unicode/unicode.c @@ -16,7 +16,6 @@ #include "unicode.h" -#include "eeprom.h" #include "eeconfig.h" #include "action.h" #include "action_util.h" @@ -136,7 +135,7 @@ static void unicode_play_song(uint8_t mode) { #endif void unicode_input_mode_init(void) { - unicode_config.raw = eeprom_read_byte(EECONFIG_UNICODEMODE); + eeconfig_read_unicode_mode(&unicode_config); #if UNICODE_SELECTED_MODES != -1 # if UNICODE_CYCLE_PERSIST // Find input_mode in selected modes @@ -165,7 +164,7 @@ uint8_t get_unicode_input_mode(void) { } static void persist_unicode_input_mode(void) { - eeprom_update_byte(EECONFIG_UNICODEMODE, unicode_config.input_mode); + eeconfig_update_unicode_mode(&unicode_config); } void set_unicode_input_mode(uint8_t mode) { diff --git a/quantum/unicode/unicode.h b/quantum/unicode/unicode.h index 90a54c8b18..f19d803335 100644 --- a/quantum/unicode/unicode.h +++ b/quantum/unicode/unicode.h @@ -26,7 +26,7 @@ * \{ */ -typedef union { +typedef union unicode_config_t { uint8_t raw; struct { uint8_t input_mode : 8; diff --git a/quantum/via.c b/quantum/via.c index 643d7aa3c3..3682b4ab2b 100644 --- a/quantum/via.c +++ b/quantum/via.c @@ -26,12 +26,12 @@ #include "raw_hid.h" #include "dynamic_keymap.h" -#include "eeprom.h" #include "eeconfig.h" #include "matrix.h" #include "timer.h" #include "wait.h" #include "version.h" // for QMK_BUILDDATE used in EEPROM magic +#include "nvm_via.h" #if defined(AUDIO_ENABLE) # include "audio.h" @@ -65,20 +65,26 @@ bool via_eeprom_is_valid(void) { uint8_t magic1 = ((p[5] & 0x0F) << 4) | (p[6] & 0x0F); uint8_t magic2 = ((p[8] & 0x0F) << 4) | (p[9] & 0x0F); - return (eeprom_read_byte((void *)VIA_EEPROM_MAGIC_ADDR + 0) == magic0 && eeprom_read_byte((void *)VIA_EEPROM_MAGIC_ADDR + 1) == magic1 && eeprom_read_byte((void *)VIA_EEPROM_MAGIC_ADDR + 2) == magic2); + uint8_t ee_magic0; + uint8_t ee_magic1; + uint8_t ee_magic2; + nvm_via_read_magic(&ee_magic0, &ee_magic1, &ee_magic2); + + return ee_magic0 == magic0 && ee_magic1 == magic1 && ee_magic2 == magic2; } // Sets VIA/keyboard level usage of EEPROM to valid/invalid // Keyboard level code (eg. via_init_kb()) should not call this void via_eeprom_set_valid(bool valid) { - char * p = QMK_BUILDDATE; // e.g. "2019-11-05-11:29:54" - uint8_t magic0 = ((p[2] & 0x0F) << 4) | (p[3] & 0x0F); - uint8_t magic1 = ((p[5] & 0x0F) << 4) | (p[6] & 0x0F); - uint8_t magic2 = ((p[8] & 0x0F) << 4) | (p[9] & 0x0F); - - eeprom_update_byte((void *)VIA_EEPROM_MAGIC_ADDR + 0, valid ? magic0 : 0xFF); - eeprom_update_byte((void *)VIA_EEPROM_MAGIC_ADDR + 1, valid ? magic1 : 0xFF); - eeprom_update_byte((void *)VIA_EEPROM_MAGIC_ADDR + 2, valid ? magic2 : 0xFF); + if (valid) { + char * p = QMK_BUILDDATE; // e.g. "2019-11-05-11:29:54" + uint8_t magic0 = ((p[2] & 0x0F) << 4) | (p[3] & 0x0F); + uint8_t magic1 = ((p[5] & 0x0F) << 4) | (p[6] & 0x0F); + uint8_t magic2 = ((p[8] & 0x0F) << 4) | (p[9] & 0x0F); + nvm_via_update_magic(magic0, magic1, magic2); + } else { + nvm_via_update_magic(0xFF, 0xFF, 0xFF); + } } // Override this at the keyboard code level to check @@ -104,6 +110,8 @@ void via_init(void) { } void eeconfig_init_via(void) { + // Erase any NVM storage if necessary + nvm_via_erase(); // set the magic number to false, in case this gets interrupted via_eeprom_set_valid(false); // This resets the layout options @@ -119,29 +127,24 @@ void eeconfig_init_via(void) { // This is generalized so the layout options EEPROM usage can be // variable, between 1 and 4 bytes. uint32_t via_get_layout_options(void) { - uint32_t value = 0; - // Start at the most significant byte - void *source = (void *)(VIA_EEPROM_LAYOUT_OPTIONS_ADDR); - for (uint8_t i = 0; i < VIA_EEPROM_LAYOUT_OPTIONS_SIZE; i++) { - value = value << 8; - value |= eeprom_read_byte(source); - source++; - } - return value; + return nvm_via_read_layout_options(); } __attribute__((weak)) void via_set_layout_options_kb(uint32_t value) {} void via_set_layout_options(uint32_t value) { via_set_layout_options_kb(value); - // Start at the least significant byte - void *target = (void *)(VIA_EEPROM_LAYOUT_OPTIONS_ADDR + VIA_EEPROM_LAYOUT_OPTIONS_SIZE - 1); - for (uint8_t i = 0; i < VIA_EEPROM_LAYOUT_OPTIONS_SIZE; i++) { - eeprom_update_byte(target, value & 0xFF); - value = value >> 8; - target--; - } + nvm_via_update_layout_options(value); +} + +#if VIA_EEPROM_CUSTOM_CONFIG_SIZE > 0 +uint32_t via_read_custom_config(void *buf, uint32_t offset, uint32_t length) { + return nvm_via_read_custom_config(buf, offset, length); +} +uint32_t via_update_custom_config(const void *buf, uint32_t offset, uint32_t length) { + return nvm_via_update_custom_config(buf, offset, length); } +#endif #if defined(AUDIO_ENABLE) float via_device_indication_song[][2] = SONG(STARTUP_SOUND); @@ -715,7 +718,7 @@ void via_qmk_rgb_matrix_set_value(uint8_t *data) { } void via_qmk_rgb_matrix_save(void) { - eeconfig_update_rgb_matrix(); + eeconfig_force_flush_rgb_matrix(); } #endif // RGB_MATRIX_ENABLE @@ -794,7 +797,7 @@ void via_qmk_led_matrix_set_value(uint8_t *data) { } void via_qmk_led_matrix_save(void) { - eeconfig_update_led_matrix(); + eeconfig_force_flush_led_matrix(); } #endif // LED_MATRIX_ENABLE @@ -861,7 +864,7 @@ void via_qmk_audio_set_value(uint8_t *data) { } void via_qmk_audio_save(void) { - eeconfig_update_audio(audio_config.raw); + eeconfig_update_audio(&audio_config); } #endif // QMK_AUDIO_ENABLE diff --git a/quantum/via.h b/quantum/via.h index 01d4c48b37..9f0eef10f7 100644 --- a/quantum/via.h +++ b/quantum/via.h @@ -16,21 +16,8 @@ #pragma once -#include "eeconfig.h" // for EECONFIG_SIZE #include "action.h" -// Keyboard level code can change where VIA stores the magic. -// The magic is the build date YYMMDD encoded as BCD in 3 bytes, -// thus installing firmware built on a different date to the one -// already installed can be detected and the EEPROM data is reset. -// The only reason this is important is in case EEPROM usage changes -// and the EEPROM was not explicitly reset by bootmagic lite. -#ifndef VIA_EEPROM_MAGIC_ADDR -# define VIA_EEPROM_MAGIC_ADDR (EECONFIG_SIZE) -#endif - -#define VIA_EEPROM_LAYOUT_OPTIONS_ADDR (VIA_EEPROM_MAGIC_ADDR + 3) - // Changing the layout options size after release will invalidate EEPROM, // but this is something that should be set correctly on initial implementation. // 1 byte is enough for most uses (i.e. 8 binary states, or 6 binary + 1 ternary/quaternary ) @@ -46,17 +33,10 @@ # define VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT 0x00000000 #endif -// The end of the EEPROM memory used by VIA -// By default, dynamic keymaps will start at this if there is no -// custom config -#define VIA_EEPROM_CUSTOM_CONFIG_ADDR (VIA_EEPROM_LAYOUT_OPTIONS_ADDR + VIA_EEPROM_LAYOUT_OPTIONS_SIZE) - #ifndef VIA_EEPROM_CUSTOM_CONFIG_SIZE # define VIA_EEPROM_CUSTOM_CONFIG_SIZE 0 #endif -#define VIA_EEPROM_CONFIG_END (VIA_EEPROM_CUSTOM_CONFIG_ADDR + VIA_EEPROM_CUSTOM_CONFIG_SIZE) - // This is changed only when the command IDs change, // so VIA Configurator can detect compatible firmware. #define VIA_PROTOCOL_VERSION 0x000C @@ -160,6 +140,11 @@ uint32_t via_get_layout_options(void); void via_set_layout_options(uint32_t value); void via_set_layout_options_kb(uint32_t value); +#if VIA_EEPROM_CUSTOM_CONFIG_SIZE > 0 +uint32_t via_read_custom_config(void *buf, uint32_t offset, uint32_t length); +uint32_t via_update_custom_config(const void *buf, uint32_t offset, uint32_t length); +#endif + // Used by VIA to tell a device to flash LEDs (or do something else) when that // device becomes the active device being configured, on startup or switching // between devices. @@ -202,4 +187,4 @@ void via_qmk_audio_command(uint8_t *data, uint8_t length); void via_qmk_audio_set_value(uint8_t *data); void via_qmk_audio_get_value(uint8_t *data); void via_qmk_audio_save(void); -#endif
\ No newline at end of file +#endif diff --git a/quantum/wear_leveling/tests/rules.mk b/quantum/wear_leveling/tests/rules.mk index 4d7a964049..f5f36e5b6e 100644 --- a/quantum/wear_leveling/tests/rules.mk +++ b/quantum/wear_leveling/tests/rules.mk @@ -63,4 +63,4 @@ wear_leveling_8byte_SRC := \ $(wear_leveling_common_SRC) \ $(QUANTUM_PATH)/wear_leveling/tests/wear_leveling_8byte.cpp wear_leveling_8byte_INC := \ - $(wear_leveling_common_INC)
\ No newline at end of file + $(wear_leveling_common_INC) @@ -1,3 +1,7 @@ +# THIS IS THE DEVELOP BRANCH + +Warning- This is the `develop` branch of QMK Firmware. You may encounter broken code here. Please see [Breaking Changes](https://docs.qmk.fm/#/breaking_changes) for more information. + # Quantum Mechanical Keyboard Firmware [](https://github.com/qmk/qmk_firmware/tags) diff --git a/requirements.txt b/requirements.txt index fbee51ee57..68b05d64e6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6,7 +6,7 @@ dotty-dict hid hjson jsonschema>=4 -milc>=1.4.2 +milc>=1.9.0 pygments pyserial pyusb diff --git a/tests/basic/test_keycode_util.cpp b/tests/basic/test_keycode_util.cpp deleted file mode 100644 index 693334676e..0000000000 --- a/tests/basic/test_keycode_util.cpp +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2022 Stefan Kerkmann -// SPDX-License-Identifier: GPL-2.0-or-later - -#include "test_common.hpp" - -class KeycodeToIdentifierSuite : public ::testing::TestWithParam<std::pair<std::uint16_t, std::string>> {}; - -TEST_P(KeycodeToIdentifierSuite, ConversionTests) { - ASSERT_EQ(get_keycode_identifier_or_default(GetParam().first), GetParam().second); -} - -INSTANTIATE_TEST_CASE_P(ConversionTestsP, KeycodeToIdentifierSuite, - // clang-format off -::testing::Values( - // Goto layer - std::make_pair(TO(0), "TO(0)"), - std::make_pair(TO(0x1F), "TO(31)"), - // Momentary switch layer - std::make_pair(MO(0), "MO(0)"), - std::make_pair(MO(0x1F), "MO(31)"), - // Set default layer - std::make_pair(DF(0), "DF(0)"), - std::make_pair(DF(0x1F), "DF(31)"), - // Toggle layer - std::make_pair(TG(0), "TG(0)"), - std::make_pair(TG(0x1F), "TG(31)"), - // One-shot layer - std::make_pair(OSL(0), "OSL(0)"), - std::make_pair(OSL(0x1F), "OSL(31)"), - // One-shot mod - std::make_pair(OSM(MOD_LSFT), "OSM(MOD_LSFT)"), - std::make_pair(OSM(MOD_LSFT | MOD_LCTL), "OSM(MOD_LCTL | MOD_LSFT)"), - // Layer Mod - std::make_pair(LM(0, MOD_LSFT), "LM(0, MOD_LSFT)"), - std::make_pair(LM(0xF, MOD_LSFT), "LM(15, MOD_LSFT)"), - std::make_pair(LM(0xF, MOD_LSFT | MOD_LCTL), "LM(15, MOD_LCTL | MOD_LSFT)"), - // Layer tap toggle - std::make_pair(TT(0), "TT(0)"), - std::make_pair(TT(0x1F), "TT(31)"), - // Layer tap - std::make_pair(LT(0, KC_A), "LT(0, KC_A)"), - std::make_pair(LT(0xF, KC_SPACE), "LT(15, KC_SPACE)"), - std::make_pair(LT(1, KC_SPC), "LT(1, KC_SPACE)"), - // Mod tap - std::make_pair(MT(MOD_LCTL, KC_A), "MT(MOD_LCTL, KC_A)"), - std::make_pair(MT(MOD_LCTL | MOD_LSFT, KC_A), "MT(MOD_LCTL | MOD_LSFT, KC_A)"), - std::make_pair(ALT_T(KC_TAB), "MT(MOD_LALT, KC_TAB)"), - // Mods - std::make_pair(LCTL(KC_A), "QK_MODS(KC_A, QK_LCTL)"), - std::make_pair(HYPR(KC_SPACE), "QK_MODS(KC_SPACE, QK_LCTL | QK_LSFT | QK_LALT | QK_LGUI)") -)); -// clang-format on diff --git a/tests/basic/test_one_shot_keys.cpp b/tests/basic/test_one_shot_keys.cpp index 92db52f811..4784c86694 100644 --- a/tests/basic/test_one_shot_keys.cpp +++ b/tests/basic/test_one_shot_keys.cpp @@ -686,4 +686,4 @@ TEST_F(OneShot, OSLWithLongModTapKeyAndRegularKey) { regular_key.release(); run_one_scan_loop(); VERIFY_AND_CLEAR(driver); -}
\ No newline at end of file +} diff --git a/tests/caps_word/test.mk b/tests/caps_word/test.mk index 2509b01858..6d5664aa05 100644 --- a/tests/caps_word/test.mk +++ b/tests/caps_word/test.mk @@ -15,5 +15,7 @@ CAPS_WORD_ENABLE = yes COMMAND_ENABLE = no +LAYER_LOCK_ENABLE = yes SPACE_CADET_ENABLE = yes +TRI_LAYER_ENABLE = yes diff --git a/tests/caps_word/test_caps_word.cpp b/tests/caps_word/test_caps_word.cpp index 28d86e9324..4b58790915 100644 --- a/tests/caps_word/test_caps_word.cpp +++ b/tests/caps_word/test_caps_word.cpp @@ -156,21 +156,22 @@ TEST_F(CapsWord, IdleTimeout) { // Turn on Caps Word and tap "A". caps_word_on(); tap_key(key_a); - VERIFY_AND_CLEAR(driver); + EXPECT_EMPTY_REPORT(driver); idle_for(CAPS_WORD_IDLE_TIMEOUT); run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); // Caps Word should be off and mods should be clear. EXPECT_EQ(is_caps_word_on(), false); EXPECT_EQ(get_mods() | get_weak_mods(), 0); - EXPECT_EMPTY_REPORT(driver).Times(AnyNumber()); // Expect unshifted "A". EXPECT_REPORT(driver, (KC_A)); + EXPECT_EMPTY_REPORT(driver); tap_key(key_a); - + run_one_scan_loop(); VERIFY_AND_CLEAR(driver); } @@ -244,6 +245,7 @@ TEST_F(CapsWord, ShiftsAltGrSymbols) { // clang-format off EXPECT_CALL(driver, send_keyboard_mock(AnyOf( KeyboardReport(), + KeyboardReport(KC_LSFT), KeyboardReport(KC_RALT), KeyboardReport(KC_LSFT, KC_RALT)))) .Times(AnyNumber()); @@ -259,6 +261,9 @@ TEST_F(CapsWord, ShiftsAltGrSymbols) { tap_key(key_a); run_one_scan_loop(); key_altgr.release(); + run_one_scan_loop(); + + idle_for(CAPS_WORD_IDLE_TIMEOUT); VERIFY_AND_CLEAR(driver); } @@ -274,6 +279,7 @@ TEST_F(CapsWord, ShiftsModTapAltGrSymbols) { // clang-format off EXPECT_CALL(driver, send_keyboard_mock(AnyOf( KeyboardReport(), + KeyboardReport(KC_LSFT), KeyboardReport(KC_RALT), KeyboardReport(KC_LSFT, KC_RALT)))) .Times(AnyNumber()); @@ -289,8 +295,11 @@ TEST_F(CapsWord, ShiftsModTapAltGrSymbols) { tap_key(key_a); run_one_scan_loop(); key_altgr_t.release(); - + run_one_scan_loop(); EXPECT_TRUE(is_caps_word_on()); + + idle_for(CAPS_WORD_IDLE_TIMEOUT); + VERIFY_AND_CLEAR(driver); } @@ -535,7 +544,11 @@ TEST_P(CapsWordDoubleTapShift, Activation) { // machine at this point. This due to imperfect test isolation which can't // reset the caps word double shift timer on test case setup. idle_for(CAPS_WORD_IDLE_TIMEOUT); + + EXPECT_REPORT(driver, (KC_ESC)); + EXPECT_EMPTY_REPORT(driver); tap_key(esc); + VERIFY_AND_CLEAR(driver); } // Double tap doesn't count if another key is pressed between the taps. @@ -589,6 +602,7 @@ TEST_P(CapsWordDoubleTapShift, SlowTaps) { EXPECT_EQ(is_caps_word_on(), false); // Caps Word is still off. clear_oneshot_mods(); + send_keyboard_report(); VERIFY_AND_CLEAR(driver); } @@ -626,7 +640,7 @@ TEST_F(CapsWord, IgnoresOSLHold) { run_one_scan_loop(); tap_key(key_b); key_osl.release(); - run_one_scan_loop(); + idle_for(CAPS_WORD_IDLE_TIMEOUT + 1); VERIFY_AND_CLEAR(driver); } @@ -645,15 +659,39 @@ TEST_F(CapsWord, IgnoresOSLTap) { KeyboardReport(), KeyboardReport(KC_LSFT)))) .Times(AnyNumber()); + // clang-format on EXPECT_REPORT(driver, (KC_LSFT, KC_B)); caps_word_on(); tap_key(key_osl); tap_key(key_b); - run_one_scan_loop(); + idle_for(CAPS_WORD_IDLE_TIMEOUT); + + VERIFY_AND_CLEAR(driver); +} + +TEST_F(CapsWord, IgnoresLayerLockKey) { + TestDriver driver; + KeymapKey key_llock(0, 1, 0, QK_LAYER_LOCK); + KeymapKey key_b(0, 0, 0, KC_B); + set_keymap({key_llock, key_b}); + + // Allow any number of reports with no keys or only modifiers. + // clang-format off + EXPECT_CALL(driver, send_keyboard_mock(AnyOf( + KeyboardReport(), + KeyboardReport(KC_LSFT)))) + .Times(AnyNumber()); + // clang-format on + + EXPECT_REPORT(driver, (KC_LSFT, KC_B)); + caps_word_on(); + + tap_key(key_llock); + tap_key(key_b); + idle_for(CAPS_WORD_IDLE_TIMEOUT); VERIFY_AND_CLEAR(driver); } -// clang-format on } // namespace diff --git a/tests/combo/combo_repress/test_combo.cpp b/tests/combo/combo_repress/test_combo.cpp index 1488d5c1bd..b1a2d36cb3 100644 --- a/tests/combo/combo_repress/test_combo.cpp +++ b/tests/combo/combo_repress/test_combo.cpp @@ -2,9 +2,9 @@ // SPDX-License-Identifier: GPL-2.0-or-later #include "keyboard_report_util.hpp" -#include "quantum.h" #include "keycode.h" #include "test_common.h" +#include "test_common.hpp" #include "test_driver.hpp" #include "test_fixture.hpp" #include "test_keymap_key.hpp" diff --git a/tests/combo/test_combo.cpp b/tests/combo/test_combo.cpp index ac852f9d16..d78ec55990 100644 --- a/tests/combo/test_combo.cpp +++ b/tests/combo/test_combo.cpp @@ -3,7 +3,6 @@ // SPDX-License-Identifier: GPL-2.0-or-later #include "keyboard_report_util.hpp" -#include "quantum.h" #include "keycode.h" #include "test_common.h" #include "test_driver.hpp" diff --git a/keyboards/xelus/valor_frl_tkl/rev2_1/config.h b/tests/keycode_string/config.h index b085b99d88..7fc76d7c2e 100644 --- a/keyboards/xelus/valor_frl_tkl/rev2_1/config.h +++ b/tests/keycode_string/config.h @@ -1,4 +1,4 @@ -/* Copyright 2022 Harrison Chan (Xelus) +/* Copyright 2017 Fred Sundvik * * 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 @@ -16,4 +16,4 @@ #pragma once -#define STM32_HSECLK 16000000 +#include "test_common.h" diff --git a/tests/keycode_string/test.mk b/tests/keycode_string/test.mk new file mode 100644 index 0000000000..aa255a1b6b --- /dev/null +++ b/tests/keycode_string/test.mk @@ -0,0 +1,22 @@ +# Copyright 2025 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +EXTRAKEY_ENABLE = yes +KEYCODE_STRING_ENABLE = yes +KEY_LOCK_ENABLE = yes +MAGIC_ENABLE = yes +MOUSEKEY_ENABLE = yes +PROGRAMMABLE_BUTTON_ENABLE = yes +SECURE_ENABLE = yes +SWAP_HANDS_ENABLE = yes diff --git a/tests/keycode_string/test_keycode_string.cpp b/tests/keycode_string/test_keycode_string.cpp new file mode 100644 index 0000000000..e1dec70e7a --- /dev/null +++ b/tests/keycode_string/test_keycode_string.cpp @@ -0,0 +1,153 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include <iostream> + +#include "test_common.hpp" + +enum { + MYMACRO1 = SAFE_RANGE, + MYMACRO2, +}; + +// clang-format off +extern "C" { + +KEYCODE_STRING_NAMES_KB( + KEYCODE_STRING_NAME(MYMACRO1), +); + +KEYCODE_STRING_NAMES_USER( + KEYCODE_STRING_NAME(MYMACRO2), + KEYCODE_STRING_NAME(KC_EXLM), +); + +const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = { + {{9, 0}, {8, 0}, {7, 0}, {6, 0}, {5, 0}, {4, 0}, {3, 0}, {2, 0}, {1, 0}, {0, 0}}, + {{9, 1}, {8, 1}, {7, 1}, {6, 1}, {5, 1}, {4, 1}, {3, 1}, {2, 1}, {1, 1}, {0, 1}}, + {{9, 2}, {8, 2}, {7, 2}, {6, 2}, {5, 2}, {4, 2}, {3, 2}, {2, 2}, {1, 2}, {0, 2}}, + {{9, 3}, {8, 3}, {7, 3}, {6, 3}, {5, 3}, {4, 3}, {3, 3}, {2, 3}, {1, 3}, {0, 3}}, +}; + +} // extern "C" +// clang-format on + +class KeycodeStringTest : public TestFixture {}; + +TEST_F(KeycodeStringTest, get_keycode_string) { + struct TestParams { + uint16_t keycode; + std::string expected; + }; + for (const auto [keycode, expected] : std::vector<TestParams>({ + {KC_TRNS, "KC_TRNS"}, + {KC_ESC, "KC_ESC"}, + {KC_A, "KC_A"}, + {KC_Z, "KC_Z"}, + {KC_0, "KC_0"}, + {KC_9, "KC_9"}, + {KC_KP_0, "KC_KP_0"}, + {KC_KP_9, "KC_KP_9"}, + {KC_LBRC, "KC_LBRC"}, + {KC_NUHS, "KC_NUHS"}, + {KC_NUBS, "KC_NUBS"}, + {KC_CAPS, "KC_CAPS"}, + {DB_TOGG, "DB_TOGG"}, + {KC_LCTL, "KC_LCTL"}, + {KC_LSFT, "KC_LSFT"}, + {KC_RALT, "KC_RALT"}, + {KC_RGUI, "KC_RGUI"}, + {KC_UP, "KC_UP"}, + {KC_HYPR, "KC_HYPR"}, + {KC_MEH, "KC_MEH"}, + // F1-F24 keycodes. + {KC_F1, "KC_F1"}, + {KC_F12, "KC_F12"}, + {KC_F13, "KC_F13"}, + {KC_F24, "KC_F24"}, + // Macro keycodes. + {MC_0, "MC_0"}, + {MC_31, "MC_31"}, + // Keyboard range keycodes. + {QK_KB_0, "QK_KB_0"}, + {QK_KB_31, "QK_KB_31"}, + // User range keycodes. + {QK_USER_2, "QK_USER_2"}, + {QK_USER_31, "QK_USER_31"}, + // Modified keycodes. + {KC_COLN, "S(KC_SCLN)"}, + {C(KC_PGUP), "C(KC_PGUP)"}, + {RALT(KC_BSPC), "RALT(KC_BSPC)"}, + // One-shot mods. + {OSM(MOD_LSFT), "OSM(MOD_LSFT)"}, + {OSM(MOD_RGUI), "OSM(MOD_RGUI)"}, + {OSM(MOD_RCTL | MOD_RGUI), "OSM(0x19)"}, + // Layer switch keycodes. + {DF(2), "DF(2)"}, + {PDF(12), "PDF(12)"}, + {MO(3), "MO(3)"}, + {TO(0), "TO(0)"}, + {TT(1), "TT(1)"}, + {TG(3), "TG(3)"}, + {OSL(3), "OSL(3)"}, + {LM(3, MOD_RALT), "LM(3,MOD_RALT)"}, + {LT(15, KC_QUOT), "LT(15,KC_QUOT)"}, + // Tap dance keycodes. + {TD(0), "TD(0)"}, + {TD(31), "TD(31)"}, + // Mod-tap keycodes. + {LSFT_T(KC_ENT), "LSFT_T(KC_ENT)"}, + {RCTL_T(KC_RGHT), "RCTL_T(KC_RGHT)"}, + {HYPR_T(KC_GRV), "HYPR_T(KC_GRV)"}, + {MEH_T(KC_EQL), "MEH_T(KC_EQL)"}, + {RSA_T(KC_LBRC), "MT(0x16,KC_LBRC)"}, + // Extrakey keycodes. + {KC_WBAK, "KC_WBAK"}, + {KC_WFWD, "KC_WFWD"}, + {KC_WREF, "KC_WREF"}, + {KC_VOLU, "KC_VOLU"}, + {KC_VOLD, "KC_VOLD"}, + // Mouse Key keycodes. + {MS_LEFT, "MS_LEFT"}, + {MS_RGHT, "MS_RGHT"}, + {MS_UP, "MS_UP"}, + {MS_WHLU, "MS_WHLU"}, + {MS_WHLD, "MS_WHLD"}, + {MS_BTN1, "MS_BTN1"}, + {MS_BTN8, "MS_BTN8"}, + // Swap Hands keycodes. + {SH_MON, "SH_MON"}, + {SH_TOGG, "SH_TOGG"}, + {SH_T(KC_PSCR), "SH_T(KC_PSCR)"}, + // Secure keycodes. + {SE_LOCK, "SE_LOCK"}, + {SE_UNLK, "SE_UNLK"}, + {SE_TOGG, "SE_TOGG"}, + {SE_REQ, "SE_REQ"}, + // Programmable button keycodes. + {PB_1, "PB_1"}, + {PB_32, "PB_32"}, + // Magic button keycodes. + {QK_MAGIC + 7, "QK_MAGIC+7"}, + // Quantum keycodes. + {QK_LOCK, "QK_LOCK"}, + {QK_QUANTUM + 7, "QK_QUANTUM+7"}, + // Custom keycode names. + {MYMACRO1, "MYMACRO1"}, + {MYMACRO2, "MYMACRO2"}, + {KC_EXLM, "KC_EXLM"}, + })) { + EXPECT_EQ(get_keycode_string(keycode), expected) << "where keycode = 0x" << std::hex << keycode; + } +} diff --git a/tests/no_tapping/no_action_tapping/test.mk b/tests/no_tapping/no_action_tapping/test.mk index 29690d1adf..6ec384609c 100644 --- a/tests/no_tapping/no_action_tapping/test.mk +++ b/tests/no_tapping/no_action_tapping/test.mk @@ -15,4 +15,4 @@ # -------------------------------------------------------------------------------- # Keep this file, even if it is empty, as a marker that this folder contains tests -# --------------------------------------------------------------------------------
\ No newline at end of file +# -------------------------------------------------------------------------------- diff --git a/tests/no_tapping/no_mod_tap_mods/test.mk b/tests/no_tapping/no_mod_tap_mods/test.mk index 29690d1adf..6ec384609c 100644 --- a/tests/no_tapping/no_mod_tap_mods/test.mk +++ b/tests/no_tapping/no_mod_tap_mods/test.mk @@ -15,4 +15,4 @@ # -------------------------------------------------------------------------------- # Keep this file, even if it is empty, as a marker that this folder contains tests -# --------------------------------------------------------------------------------
\ No newline at end of file +# -------------------------------------------------------------------------------- diff --git a/tests/repeat_key/alt_repeat_key/test_alt_repeat_key.cpp b/tests/repeat_key/alt_repeat_key/test_alt_repeat_key.cpp index ae525acb45..e2eed3dbb6 100644 --- a/tests/repeat_key/alt_repeat_key/test_alt_repeat_key.cpp +++ b/tests/repeat_key/alt_repeat_key/test_alt_repeat_key.cpp @@ -210,7 +210,7 @@ TEST_F(AltRepeatKey, GetAltRepeatKeyKeycode) { {MO(1), 0, KC_NO}, // clang-format on })) { - SCOPED_TRACE(std::string("Input keycode: ") + get_keycode_identifier_or_default(params.keycode)); + SCOPED_TRACE(std::string("Input keycode: ") + get_keycode_string(params.keycode)); set_last_keycode(params.keycode); set_last_mods(params.mods); diff --git a/tests/repeat_key/test.mk b/tests/repeat_key/test.mk index aec8ff3bfb..186207ffc2 100644 --- a/tests/repeat_key/test.mk +++ b/tests/repeat_key/test.mk @@ -16,3 +16,4 @@ REPEAT_KEY_ENABLE = yes AUTO_SHIFT_ENABLE = yes +LAYER_LOCK_ENABLE = yes diff --git a/tests/repeat_key/test_repeat_key.cpp b/tests/repeat_key/test_repeat_key.cpp index eee44fc104..ed5d618761 100644 --- a/tests/repeat_key/test_repeat_key.cpp +++ b/tests/repeat_key/test_repeat_key.cpp @@ -751,4 +751,37 @@ TEST_F(RepeatKey, RepeatKeyInvoke) { testing::Mock::VerifyAndClearExpectations(&driver); } +// Check that mods and Layer Lock are not remembered. +TEST_F(RepeatKey, IgnoredKeys) { + TestDriver driver; + KeymapKey regular_key(0, 0, 0, KC_A); + KeymapKey key_repeat(0, 1, 0, QK_REP); + KeymapKey key_lsft(0, 2, 0, KC_LSFT); + KeymapKey key_lctl(0, 3, 0, KC_LCTL); + KeymapKey key_llck(0, 4, 0, QK_LAYER_LOCK); + set_keymap({regular_key, key_repeat, key_lsft, key_lctl, key_llck}); + + // Allow any number of empty reports. + EXPECT_EMPTY_REPORT(driver).Times(AnyNumber()); + { + InSequence seq; + EXPECT_REPORT(driver, (KC_A)); + EXPECT_REPORT(driver, (KC_LSFT)); + EXPECT_REPORT(driver, (KC_LCTL)); + EXPECT_REPORT(driver, (KC_A)); + EXPECT_REPORT(driver, (KC_A)); + } + + tap_key(regular_key); // Taps the KC_A key. + + // Tap Shift, Ctrl, and Layer Lock keys, which should not be remembered. + tap_keys(key_lsft, key_lctl, key_llck); + EXPECT_KEYCODE_EQ(get_last_keycode(), KC_A); + + // Tapping the Repeat Key should still reproduce KC_A. + tap_keys(key_repeat, key_repeat); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + } // namespace diff --git a/keyboards/neson_design/810e/config.h b/tests/tap_hold_configurations/chordal_hold/permissive_hold_flow_tap/config.h index c6409b1ece..9267b94bec 100644 --- a/keyboards/neson_design/810e/config.h +++ b/tests/tap_hold_configurations/chordal_hold/permissive_hold_flow_tap/config.h @@ -1,5 +1,5 @@ -/** - * Copyright 2024 astro +/* Copyright 2022 Vladislav Kucheriavykh + * Copyright 2024-2025 Google LLC * * 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 @@ -17,5 +17,7 @@ #pragma once -#define BOARD_OTG_NOVBUSSENS 1 -#define STM32_HSECLK 16000000U +#include "test_common.h" +#define CHORDAL_HOLD +#define PERMISSIVE_HOLD +#define FLOW_TAP_TERM 150 diff --git a/tests/tap_hold_configurations/chordal_hold/permissive_hold_flow_tap/test.mk b/tests/tap_hold_configurations/chordal_hold/permissive_hold_flow_tap/test.mk new file mode 100644 index 0000000000..2b049cea3b --- /dev/null +++ b/tests/tap_hold_configurations/chordal_hold/permissive_hold_flow_tap/test.mk @@ -0,0 +1,17 @@ +# Copyright 2022 Vladislav Kucheriavykh +# Copyright 2024 Google LLC +# +# 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/>. + +INTROSPECTION_KEYMAP_C = test_keymap.c diff --git a/tests/tap_hold_configurations/chordal_hold/permissive_hold_flow_tap/test_keymap.c b/tests/tap_hold_configurations/chordal_hold/permissive_hold_flow_tap/test_keymap.c new file mode 100644 index 0000000000..8a6a2c59b0 --- /dev/null +++ b/tests/tap_hold_configurations/chordal_hold/permissive_hold_flow_tap/test_keymap.c @@ -0,0 +1,22 @@ +// Copyright 2024 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include "quantum.h" + +const char chordal_hold_layout[MATRIX_ROWS][MATRIX_COLS] PROGMEM = { + {'L', 'L', 'L', 'L', 'L', 'R', 'R', 'R', 'R', 'R'}, + {'L', 'L', 'L', 'L', 'L', 'R', 'R', 'R', 'R', 'R'}, + {'*', 'L', 'L', 'L', 'L', 'R', 'R', 'R', 'R', 'R'}, + {'L', 'L', 'L', 'L', 'L', 'R', 'R', 'R', 'R', 'R'}, +}; diff --git a/tests/tap_hold_configurations/chordal_hold/permissive_hold_flow_tap/test_one_shot_keys.cpp b/tests/tap_hold_configurations/chordal_hold/permissive_hold_flow_tap/test_one_shot_keys.cpp new file mode 100644 index 0000000000..e48cba73e2 --- /dev/null +++ b/tests/tap_hold_configurations/chordal_hold/permissive_hold_flow_tap/test_one_shot_keys.cpp @@ -0,0 +1,174 @@ +/* Copyright 2021 Stefan Kerkmann + * Copyright 2024 Google LLC + * + * 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 "action_util.h" +#include "keyboard_report_util.hpp" +#include "test_common.hpp" + +using testing::_; +using testing::InSequence; + +class OneShot : public TestFixture {}; +class OneShotParametrizedTestFixture : public ::testing::WithParamInterface<std::pair<KeymapKey, KeymapKey>>, public OneShot {}; + +TEST_P(OneShotParametrizedTestFixture, OSMWithAdditionalKeypress) { + TestDriver driver; + KeymapKey osm_key = GetParam().first; + KeymapKey regular_key = GetParam().second; + + set_keymap({osm_key, regular_key}); + + // Press and release OSM. + EXPECT_NO_REPORT(driver); + tap_key(osm_key); + VERIFY_AND_CLEAR(driver); + + // Press regular key. + EXPECT_REPORT(driver, (osm_key.report_code, regular_key.report_code)); + regular_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release regular key. + EXPECT_EMPTY_REPORT(driver); + regular_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_P(OneShotParametrizedTestFixture, OSMAsRegularModifierWithAdditionalKeypress) { + TestDriver driver; + KeymapKey osm_key = GetParam().first; + KeymapKey regular_key = GetParam().second; + + set_keymap({osm_key, regular_key}); + + // Press OSM. + EXPECT_NO_REPORT(driver); + osm_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Press regular key. + EXPECT_NO_REPORT(driver); + regular_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release regular key. + EXPECT_REPORT(driver, (osm_key.report_code)).Times(2); + EXPECT_REPORT(driver, (regular_key.report_code, osm_key.report_code)); + regular_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release OSM. + EXPECT_EMPTY_REPORT(driver); + osm_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +// clang-format off + +INSTANTIATE_TEST_CASE_P( + OneShotModifierTests, + OneShotParametrizedTestFixture, + ::testing::Values( + // First is osm key, second is regular key. + std::make_pair(KeymapKey{0, 0, 0, OSM(MOD_LSFT), KC_LSFT}, KeymapKey{0, 1, 1, KC_A}), + std::make_pair(KeymapKey{0, 0, 0, OSM(MOD_LCTL), KC_LCTL}, KeymapKey{0, 1, 1, KC_A}), + std::make_pair(KeymapKey{0, 0, 0, OSM(MOD_LALT), KC_LALT}, KeymapKey{0, 1, 1, KC_A}), + std::make_pair(KeymapKey{0, 0, 0, OSM(MOD_LGUI), KC_LGUI}, KeymapKey{0, 1, 1, KC_A}), + std::make_pair(KeymapKey{0, 0, 0, OSM(MOD_RCTL), KC_RCTL}, KeymapKey{0, 1, 1, KC_A}), + std::make_pair(KeymapKey{0, 0, 0, OSM(MOD_RSFT), KC_RSFT}, KeymapKey{0, 1, 1, KC_A}), + std::make_pair(KeymapKey{0, 0, 0, OSM(MOD_RALT), KC_RALT}, KeymapKey{0, 1, 1, KC_A}), + std::make_pair(KeymapKey{0, 0, 0, OSM(MOD_RGUI), KC_RGUI}, KeymapKey{0, 1, 1, KC_A}) + )); +// clang-format on + +TEST_F(OneShot, OSLWithAdditionalKeypress) { + TestDriver driver; + InSequence s; + KeymapKey osl_key = KeymapKey{0, 0, 0, OSL(1)}; + KeymapKey osl_key1 = KeymapKey{1, 0, 0, KC_X}; + KeymapKey regular_key0 = KeymapKey{0, 1, 0, KC_Y}; + KeymapKey regular_key1 = KeymapKey{1, 1, 0, KC_A}; + + set_keymap({osl_key, osl_key1, regular_key0, regular_key1}); + + // Press OSL key. + EXPECT_NO_REPORT(driver); + osl_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release OSL key. + EXPECT_NO_REPORT(driver); + osl_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Press regular key. + EXPECT_REPORT(driver, (regular_key1.report_code)); + EXPECT_EMPTY_REPORT(driver); + regular_key1.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release regular key. + EXPECT_NO_REPORT(driver); + regular_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(OneShot, OSLWithOsmAndAdditionalKeypress) { + TestDriver driver; + InSequence s; + KeymapKey osl_key = KeymapKey{0, 0, 0, OSL(1)}; + KeymapKey osm_key = KeymapKey{1, 1, 0, OSM(MOD_LSFT), KC_LSFT}; + KeymapKey regular_key = KeymapKey{1, 1, 1, KC_A}; + KeymapKey blank_key = KeymapKey{1, 0, 0, KC_NO}; + + set_keymap({osl_key, osm_key, regular_key, blank_key}); + + // Press OSL key. + EXPECT_NO_REPORT(driver); + osl_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release OSL key. + EXPECT_NO_REPORT(driver); + osl_key.release(); + run_one_scan_loop(); + EXPECT_TRUE(layer_state_is(1)); + VERIFY_AND_CLEAR(driver); + + // Press and release OSM. + EXPECT_NO_REPORT(driver); + tap_key(osm_key); + EXPECT_TRUE(layer_state_is(1)); + VERIFY_AND_CLEAR(driver); + + // Tap regular key. + EXPECT_REPORT(driver, (osm_key.report_code, regular_key.report_code)); + EXPECT_EMPTY_REPORT(driver); + tap_key(regular_key); + VERIFY_AND_CLEAR(driver); +} diff --git a/tests/tap_hold_configurations/chordal_hold/permissive_hold_flow_tap/test_tap_hold.cpp b/tests/tap_hold_configurations/chordal_hold/permissive_hold_flow_tap/test_tap_hold.cpp new file mode 100644 index 0000000000..05acb6f416 --- /dev/null +++ b/tests/tap_hold_configurations/chordal_hold/permissive_hold_flow_tap/test_tap_hold.cpp @@ -0,0 +1,911 @@ +// Copyright 2024-2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include "keyboard_report_util.hpp" +#include "keycode.h" +#include "test_common.hpp" +#include "action_tapping.h" +#include "test_fixture.hpp" +#include "test_keymap_key.hpp" + +using testing::_; +using testing::InSequence; + +class ChordalHoldPermissiveHoldFlowTap : public TestFixture {}; + +TEST_F(ChordalHoldPermissiveHoldFlowTap, chordal_hold_handedness) { + EXPECT_EQ(chordal_hold_handedness({.col = 0, .row = 0}), 'L'); + EXPECT_EQ(chordal_hold_handedness({.col = MATRIX_COLS - 1, .row = 0}), 'R'); + EXPECT_EQ(chordal_hold_handedness({.col = 0, .row = 2}), '*'); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, get_chordal_hold_default) { + auto make_record = [](uint8_t row, uint8_t col, keyevent_type_t type = KEY_EVENT) { + return keyrecord_t{ + .event = + { + .key = {.col = col, .row = row}, + .type = type, + .pressed = true, + }, + }; + }; + // Create two records on the left hand. + keyrecord_t record_l0 = make_record(0, 0); + keyrecord_t record_l1 = make_record(1, 0); + // Create a record on the right hand. + keyrecord_t record_r = make_record(0, MATRIX_COLS - 1); + + // Function should return true when records are on opposite hands. + EXPECT_TRUE(get_chordal_hold_default(&record_l0, &record_r)); + EXPECT_TRUE(get_chordal_hold_default(&record_r, &record_l0)); + // ... and false when on the same hand. + EXPECT_FALSE(get_chordal_hold_default(&record_l0, &record_l1)); + EXPECT_FALSE(get_chordal_hold_default(&record_l1, &record_l0)); + // But (2, 0) has handedness '*', for which true is returned for chords + // with either hand. + keyrecord_t record_l2 = make_record(2, 0); + EXPECT_TRUE(get_chordal_hold_default(&record_l2, &record_l0)); + EXPECT_TRUE(get_chordal_hold_default(&record_l2, &record_r)); + + // Create a record resulting from a combo. + keyrecord_t record_combo = make_record(0, 0, COMBO_EVENT); + // Function returns true in all cases. + EXPECT_TRUE(get_chordal_hold_default(&record_l0, &record_combo)); + EXPECT_TRUE(get_chordal_hold_default(&record_r, &record_combo)); + EXPECT_TRUE(get_chordal_hold_default(&record_combo, &record_l0)); + EXPECT_TRUE(get_chordal_hold_default(&record_combo, &record_r)); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, chord_nested_press_settled_as_hold) { + TestDriver driver; + InSequence s; + // Mod-tap key on the left hand. + auto mod_tap_key = KeymapKey(0, 1, 0, SFT_T(KC_P)); + // Regular key on the right hand. + auto regular_key = KeymapKey(0, MATRIX_COLS - 1, 0, KC_A); + + set_keymap({mod_tap_key, regular_key}); + + // Press mod-tap key. + EXPECT_NO_REPORT(driver); + mod_tap_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Tap regular key. + EXPECT_REPORT(driver, (KC_LEFT_SHIFT)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_A)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT)); + tap_key(regular_key); + VERIFY_AND_CLEAR(driver); + + // Release mod-tap key. + EXPECT_EMPTY_REPORT(driver); + mod_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, chord_rolled_press_settled_as_tap) { + TestDriver driver; + InSequence s; + // Mod-tap key on the left hand. + auto mod_tap_key = KeymapKey(0, 1, 0, SFT_T(KC_P)); + // Regular key on the right hand. + auto regular_key = KeymapKey(0, MATRIX_COLS - 1, 0, KC_A); + + set_keymap({mod_tap_key, regular_key}); + + // Press mod-tap key and regular key. + EXPECT_NO_REPORT(driver); + mod_tap_key.press(); + run_one_scan_loop(); + regular_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release mod-tap key. + EXPECT_REPORT(driver, (KC_P)); + EXPECT_REPORT(driver, (KC_P, KC_A)); + EXPECT_REPORT(driver, (KC_A)); + mod_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release regular key. + EXPECT_EMPTY_REPORT(driver); + regular_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, non_chord_with_mod_tap_settled_as_tap) { + TestDriver driver; + InSequence s; + // Mod-tap key and regular key both on the left hand. + auto mod_tap_key = KeymapKey(0, 1, 0, SFT_T(KC_P)); + auto regular_key = KeymapKey(0, 2, 0, KC_A); + + set_keymap({mod_tap_key, regular_key}); + + // Press mod-tap-hold key. + EXPECT_NO_REPORT(driver); + mod_tap_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Press regular key. + EXPECT_REPORT(driver, (KC_P)); + EXPECT_REPORT(driver, (KC_P, KC_A)); + regular_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release regular key. + EXPECT_REPORT(driver, (KC_P)); + regular_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release mod-tap-hold key. + EXPECT_EMPTY_REPORT(driver); + mod_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, tap_mod_tap_key) { + TestDriver driver; + InSequence s; + auto mod_tap_key = KeymapKey(0, 1, 0, SFT_T(KC_P)); + + set_keymap({mod_tap_key}); + + EXPECT_NO_REPORT(driver); + mod_tap_key.press(); + idle_for(TAPPING_TERM - 1); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_P)); + EXPECT_EMPTY_REPORT(driver); + mod_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, hold_mod_tap_key) { + TestDriver driver; + InSequence s; + auto mod_tap_key = KeymapKey(0, 1, 0, SFT_T(KC_P)); + + set_keymap({mod_tap_key}); + + EXPECT_REPORT(driver, (KC_LEFT_SHIFT)); + mod_tap_key.press(); + idle_for(TAPPING_TERM + 1); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + mod_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, two_mod_taps_same_hand_hold_til_timeout) { + TestDriver driver; + InSequence s; + auto mod_tap_key1 = KeymapKey(0, MATRIX_COLS - 2, 0, RCTL_T(KC_A)); + auto mod_tap_key2 = KeymapKey(0, MATRIX_COLS - 1, 0, RSFT_T(KC_B)); + + set_keymap({mod_tap_key1, mod_tap_key2}); + + // Press mod-tap keys. + EXPECT_NO_REPORT(driver); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Continue holding til the tapping term. + EXPECT_REPORT(driver, (KC_RIGHT_CTRL)); + EXPECT_REPORT(driver, (KC_RIGHT_CTRL, KC_RIGHT_SHIFT)); + idle_for(TAPPING_TERM); + VERIFY_AND_CLEAR(driver); + + // Release mod-tap keys. + EXPECT_REPORT(driver, (KC_RIGHT_SHIFT)); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + mod_tap_key2.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, two_mod_taps_nested_press_opposite_hands) { + TestDriver driver; + InSequence s; + auto mod_tap_key1 = KeymapKey(0, 1, 0, SFT_T(KC_A)); + auto mod_tap_key2 = KeymapKey(0, MATRIX_COLS - 1, 0, RSFT_T(KC_B)); + + set_keymap({mod_tap_key1, mod_tap_key2}); + + // Press mod-tap keys. + EXPECT_NO_REPORT(driver); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release mod-tap keys. + EXPECT_REPORT(driver, (KC_LEFT_SHIFT)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_B)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT)); + mod_tap_key2.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, two_mod_taps_nested_press_same_hand) { + TestDriver driver; + InSequence s; + auto mod_tap_key1 = KeymapKey(0, 1, 0, SFT_T(KC_A)); + auto mod_tap_key2 = KeymapKey(0, 2, 0, RSFT_T(KC_B)); + + set_keymap({mod_tap_key1, mod_tap_key2}); + + // Press mod-tap keys. + EXPECT_NO_REPORT(driver); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release mod-tap keys. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_REPORT(driver, (KC_A, KC_B)); + EXPECT_REPORT(driver, (KC_A)); + mod_tap_key2.release(); + run_one_scan_loop(); + + EXPECT_EMPTY_REPORT(driver); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, three_mod_taps_same_hand_streak_roll) { + TestDriver driver; + InSequence s; + auto mod_tap_key1 = KeymapKey(0, 1, 0, SFT_T(KC_A)); + auto mod_tap_key2 = KeymapKey(0, 2, 0, CTL_T(KC_B)); + auto mod_tap_key3 = KeymapKey(0, 3, 0, RSFT_T(KC_C)); + + set_keymap({mod_tap_key1, mod_tap_key2, mod_tap_key3}); + + // Press mod-tap keys. + EXPECT_NO_REPORT(driver); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + run_one_scan_loop(); + mod_tap_key3.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release keys 1, 2, 3. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_REPORT(driver, (KC_A, KC_B)); + EXPECT_REPORT(driver, (KC_A, KC_B, KC_C)); + EXPECT_REPORT(driver, (KC_B, KC_C)); + EXPECT_REPORT(driver, (KC_C)); + EXPECT_EMPTY_REPORT(driver); + mod_tap_key1.release(); + run_one_scan_loop(); + mod_tap_key2.release(); + run_one_scan_loop(); + mod_tap_key3.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, three_mod_taps_same_hand_streak_orders) { + TestDriver driver; + InSequence s; + auto mod_tap_key1 = KeymapKey(0, 1, 0, SFT_T(KC_A)); + auto mod_tap_key2 = KeymapKey(0, 2, 0, CTL_T(KC_B)); + auto mod_tap_key3 = KeymapKey(0, 3, 0, RSFT_T(KC_C)); + + set_keymap({mod_tap_key1, mod_tap_key2, mod_tap_key3}); + + // Press mod-tap keys. + EXPECT_NO_REPORT(driver); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + run_one_scan_loop(); + mod_tap_key3.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release keys 3, 2, 1. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_REPORT(driver, (KC_A, KC_B)); + EXPECT_REPORT(driver, (KC_A, KC_B, KC_C)); + EXPECT_REPORT(driver, (KC_A, KC_B)); + mod_tap_key3.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_A)); + mod_tap_key2.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Press mod-tap keys. + EXPECT_NO_REPORT(driver); + idle_for(TAPPING_TERM); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + run_one_scan_loop(); + mod_tap_key3.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release keys 3, 1, 2. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_REPORT(driver, (KC_A, KC_B)); + EXPECT_REPORT(driver, (KC_A, KC_B, KC_C)); + EXPECT_REPORT(driver, (KC_A, KC_B)); + mod_tap_key3.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_B)); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + mod_tap_key2.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Press mod-tap keys. + EXPECT_NO_REPORT(driver); + idle_for(TAPPING_TERM); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + run_one_scan_loop(); + mod_tap_key3.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release keys 2, 3, 1. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_REPORT(driver, (KC_A, KC_B)); + EXPECT_REPORT(driver, (KC_A, KC_B, KC_C)); + EXPECT_REPORT(driver, (KC_A, KC_C)); + EXPECT_REPORT(driver, (KC_A)); + EXPECT_EMPTY_REPORT(driver); + mod_tap_key2.release(); + run_one_scan_loop(); + mod_tap_key3.release(); + run_one_scan_loop(); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_NO_REPORT(driver); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, three_mod_taps_opposite_hands_roll) { + TestDriver driver; + InSequence s; + auto mod_tap_key1 = KeymapKey(0, 1, 0, SFT_T(KC_A)); + auto mod_tap_key2 = KeymapKey(0, 2, 0, CTL_T(KC_B)); + auto mod_tap_key3 = KeymapKey(0, MATRIX_COLS - 1, 0, RSFT_T(KC_C)); + + set_keymap({mod_tap_key1, mod_tap_key2, mod_tap_key3}); + + // Press mod-tap keys. + EXPECT_NO_REPORT(driver); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + run_one_scan_loop(); + mod_tap_key3.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release keys 1, 2, 3. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_REPORT(driver, (KC_A, KC_B)); + EXPECT_REPORT(driver, (KC_A, KC_B, KC_C)); + EXPECT_REPORT(driver, (KC_B, KC_C)); + EXPECT_REPORT(driver, (KC_C)); + EXPECT_EMPTY_REPORT(driver); + mod_tap_key1.release(); + run_one_scan_loop(); + mod_tap_key2.release(); + run_one_scan_loop(); + mod_tap_key3.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, three_mod_taps_two_left_one_right) { + TestDriver driver; + InSequence s; + auto mod_tap_key1 = KeymapKey(0, 1, 0, SFT_T(KC_A)); + auto mod_tap_key2 = KeymapKey(0, 2, 0, CTL_T(KC_B)); + auto mod_tap_key3 = KeymapKey(0, MATRIX_COLS - 1, 0, RSFT_T(KC_C)); + + set_keymap({mod_tap_key1, mod_tap_key2, mod_tap_key3}); + + // Press mod-tap keys. + EXPECT_NO_REPORT(driver); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + run_one_scan_loop(); + mod_tap_key3.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release key 3. + EXPECT_REPORT(driver, (KC_LEFT_SHIFT)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_LEFT_CTRL)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_LEFT_CTRL, KC_C)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_LEFT_CTRL)); + mod_tap_key3.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release key 2, then key 1. + EXPECT_REPORT(driver, (KC_LEFT_SHIFT)); + mod_tap_key2.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Press mod-tap keys. + EXPECT_NO_REPORT(driver); + idle_for(TAPPING_TERM); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + run_one_scan_loop(); + mod_tap_key3.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release key 3. + EXPECT_REPORT(driver, (KC_LEFT_SHIFT)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_LEFT_CTRL)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_LEFT_CTRL, KC_C)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_LEFT_CTRL)); + mod_tap_key3.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release key 1, then key 2. + EXPECT_REPORT(driver, (KC_LEFT_CTRL)); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + mod_tap_key2.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, three_mod_taps_one_held_two_tapped) { + TestDriver driver; + InSequence s; + auto mod_tap_key1 = KeymapKey(0, 1, 0, SFT_T(KC_A)); + auto mod_tap_key2 = KeymapKey(0, MATRIX_COLS - 2, 0, CTL_T(KC_B)); + auto mod_tap_key3 = KeymapKey(0, MATRIX_COLS - 1, 0, RSFT_T(KC_C)); + + set_keymap({mod_tap_key1, mod_tap_key2, mod_tap_key3}); + + // Press mod-tap keys. + EXPECT_NO_REPORT(driver); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + run_one_scan_loop(); + mod_tap_key3.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release keys 3, 2, 1. + EXPECT_REPORT(driver, (KC_LEFT_SHIFT)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_B)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_B, KC_C)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_B)); + mod_tap_key3.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_LEFT_SHIFT)); + mod_tap_key2.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Press mod-tap keys. + EXPECT_NO_REPORT(driver); + idle_for(TAPPING_TERM); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + run_one_scan_loop(); + mod_tap_key3.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release keys 3, 1, 2. + EXPECT_REPORT(driver, (KC_LEFT_SHIFT)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_B)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_B, KC_C)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_B)); + mod_tap_key3.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_B)); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + mod_tap_key2.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, two_mod_taps_one_regular_key) { + TestDriver driver; + InSequence s; + auto mod_tap_key1 = KeymapKey(0, 1, 0, SFT_T(KC_A)); + auto mod_tap_key2 = KeymapKey(0, MATRIX_COLS - 2, 0, CTL_T(KC_B)); + auto regular_key = KeymapKey(0, MATRIX_COLS - 1, 0, KC_C); + + set_keymap({mod_tap_key1, mod_tap_key2, regular_key}); + + // Press keys. + EXPECT_NO_REPORT(driver); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + run_one_scan_loop(); + regular_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release keys. + EXPECT_REPORT(driver, (KC_LEFT_SHIFT)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_B)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_B, KC_C)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_C)); + mod_tap_key2.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_LEFT_SHIFT)); + regular_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Press mod-tap keys. + EXPECT_NO_REPORT(driver); + idle_for(TAPPING_TERM); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + run_one_scan_loop(); + regular_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release keys. + EXPECT_REPORT(driver, (KC_LEFT_SHIFT)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_B)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_B, KC_C)); + EXPECT_REPORT(driver, (KC_LEFT_SHIFT, KC_B)); + regular_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_B)); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + mod_tap_key2.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, tap_regular_key_while_layer_tap_key_is_held) { + TestDriver driver; + InSequence s; + auto layer_tap_hold_key = KeymapKey(0, 1, 0, LT(1, KC_P)); + auto regular_key = KeymapKey(0, MATRIX_COLS - 1, 0, KC_A); + auto no_key = KeymapKey(1, 1, 0, XXXXXXX); + auto layer_key = KeymapKey(1, MATRIX_COLS - 1, 0, KC_B); + + set_keymap({layer_tap_hold_key, regular_key, no_key, layer_key}); + + // Press layer-tap-hold key. + EXPECT_NO_REPORT(driver); + layer_tap_hold_key.press(); + run_one_scan_loop(); + // Press regular key. + regular_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release regular key. + EXPECT_REPORT(driver, (KC_B)); + EXPECT_EMPTY_REPORT(driver); + regular_key.release(); + run_one_scan_loop(); + EXPECT_EQ(layer_state, 2); + VERIFY_AND_CLEAR(driver); + + // Release layer-tap-hold key. + EXPECT_NO_REPORT(driver); + layer_tap_hold_key.release(); + run_one_scan_loop(); + EXPECT_EQ(layer_state, 0); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, nested_tap_of_layer_0_layer_tap_keys) { + TestDriver driver; + InSequence s; + // The keys are layer-taps on layer 2 but regular keys on layer 1. + auto first_layer_tap_key = KeymapKey(0, 1, 0, LT(1, KC_A)); + auto second_layer_tap_key = KeymapKey(0, MATRIX_COLS - 1, 0, LT(1, KC_P)); + auto first_key_on_layer = KeymapKey(1, 1, 0, KC_B); + auto second_key_on_layer = KeymapKey(1, MATRIX_COLS - 1, 0, KC_Q); + + set_keymap({first_layer_tap_key, second_layer_tap_key, first_key_on_layer, second_key_on_layer}); + + // Press first layer-tap key. + EXPECT_NO_REPORT(driver); + first_layer_tap_key.press(); + run_one_scan_loop(); + // Press second layer-tap key. + second_layer_tap_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release second layer-tap key. + EXPECT_REPORT(driver, (KC_Q)); + EXPECT_EMPTY_REPORT(driver); + second_layer_tap_key.release(); + run_one_scan_loop(); + EXPECT_EQ(layer_state, 2); + VERIFY_AND_CLEAR(driver); + + // Release first layer-tap key. + EXPECT_NO_REPORT(driver); + first_layer_tap_key.release(); + run_one_scan_loop(); + EXPECT_EQ(layer_state, 0); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, lt_mt_one_regular_key) { + TestDriver driver; + InSequence s; + auto lt_key = KeymapKey(0, 1, 0, LT(1, KC_A)); + auto mt_key0 = KeymapKey(0, 2, 0, SFT_T(KC_B)); + auto mt_key1 = KeymapKey(1, 2, 0, CTL_T(KC_C)); + auto regular_key = KeymapKey(1, MATRIX_COLS - 1, 0, KC_X); + auto no_key0 = KeymapKey(0, MATRIX_COLS - 1, 0, XXXXXXX); + auto no_key1 = KeymapKey(1, 1, 0, XXXXXXX); + + set_keymap({lt_key, mt_key0, mt_key1, regular_key, no_key0, no_key1}); + + // Press LT, MT, and regular key. + EXPECT_NO_REPORT(driver); + lt_key.press(); + run_one_scan_loop(); + mt_key1.press(); + run_one_scan_loop(); + regular_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release the regular key. + EXPECT_REPORT(driver, (KC_LCTL)); + EXPECT_REPORT(driver, (KC_LCTL, KC_X)); + EXPECT_REPORT(driver, (KC_LCTL)); + regular_key.release(); + run_one_scan_loop(); + EXPECT_EQ(get_mods(), MOD_BIT_LCTRL); + EXPECT_EQ(layer_state, 2); + VERIFY_AND_CLEAR(driver); + + // Release MT key. + EXPECT_EMPTY_REPORT(driver); + mt_key1.release(); + run_one_scan_loop(); + EXPECT_EQ(get_mods(), 0); + VERIFY_AND_CLEAR(driver); + + // Release LT key. + EXPECT_NO_REPORT(driver); + lt_key.release(); + run_one_scan_loop(); + EXPECT_EQ(layer_state, 0); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, nested_tap_of_layer_tap_keys) { + TestDriver driver; + InSequence s; + // The keys are layer-taps on all layers. + auto first_key_layer_0 = KeymapKey(0, 1, 0, LT(1, KC_A)); + auto second_key_layer_0 = KeymapKey(0, MATRIX_COLS - 1, 0, LT(1, KC_P)); + auto first_key_layer_1 = KeymapKey(1, 1, 0, LT(2, KC_B)); + auto second_key_layer_1 = KeymapKey(1, MATRIX_COLS - 1, 0, LT(2, KC_Q)); + auto first_key_layer_2 = KeymapKey(2, 1, 0, KC_TRNS); + auto second_key_layer_2 = KeymapKey(2, MATRIX_COLS - 1, 0, KC_TRNS); + + set_keymap({first_key_layer_0, second_key_layer_0, first_key_layer_1, second_key_layer_1, first_key_layer_2, second_key_layer_2}); + + // Press first layer-tap key. + EXPECT_NO_REPORT(driver); + first_key_layer_0.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Press second layer-tap key. + EXPECT_NO_REPORT(driver); + second_key_layer_0.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release second layer-tap key. + EXPECT_REPORT(driver, (KC_Q)); + EXPECT_EMPTY_REPORT(driver); + second_key_layer_0.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release first layer-tap key. + EXPECT_NO_REPORT(driver); + first_key_layer_0.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, roll_layer_tap_key_with_regular_key) { + TestDriver driver; + InSequence s; + + auto layer_tap_hold_key = KeymapKey(0, 1, 0, LT(1, KC_P)); + auto regular_key = KeymapKey(0, MATRIX_COLS - 1, 0, KC_A); + auto layer_key = KeymapKey(1, MATRIX_COLS - 1, 0, KC_B); + + set_keymap({layer_tap_hold_key, regular_key, layer_key}); + + // Press layer-tap-hold key. + EXPECT_NO_REPORT(driver); + layer_tap_hold_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Press regular key. + EXPECT_NO_REPORT(driver); + regular_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release layer-tap-hold key. + EXPECT_REPORT(driver, (KC_P)); + EXPECT_REPORT(driver, (KC_P, KC_A)); + EXPECT_REPORT(driver, (KC_A)); + layer_tap_hold_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release regular key. + EXPECT_EMPTY_REPORT(driver); + regular_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(ChordalHoldPermissiveHoldFlowTap, two_mod_tap_keys_stuttered_press) { + TestDriver driver; + InSequence s; + + auto mod_tap_key1 = KeymapKey(0, 1, 0, LSFT_T(KC_A)); + auto mod_tap_key2 = KeymapKey(0, 2, 0, LCTL_T(KC_B)); + + set_keymap({mod_tap_key1, mod_tap_key2}); + + // Hold first mod-tap key until the tapping term. + EXPECT_REPORT(driver, (KC_LSFT)); + mod_tap_key1.press(); + idle_for(TAPPING_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Press the second mod-tap key, then quickly release and press the first. + EXPECT_NO_REPORT(driver); + mod_tap_key2.press(); + run_one_scan_loop(); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_LSFT, KC_B)); + EXPECT_REPORT(driver, (KC_B)); + EXPECT_REPORT(driver, (KC_B, KC_A)); + mod_tap_key1.press(); + run_one_scan_loop(); + EXPECT_EQ(get_mods(), 0); // Verify that Shift was released. + VERIFY_AND_CLEAR(driver); + + // Release both keys. + EXPECT_REPORT(driver, (KC_A)); + mod_tap_key2.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} diff --git a/keyboards/xelus/valor_frl_tkl/rev2_0/config.h b/tests/tap_hold_configurations/flow_tap/config.h index b085b99d88..d6f385d8d4 100644 --- a/keyboards/xelus/valor_frl_tkl/rev2_0/config.h +++ b/tests/tap_hold_configurations/flow_tap/config.h @@ -1,4 +1,5 @@ -/* Copyright 2022 Harrison Chan (Xelus) +/* Copyright 2022 Vladislav Kucheriavykh + * Copyright 2025 Google LLC * * 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 @@ -16,4 +17,7 @@ #pragma once -#define STM32_HSECLK 16000000 +#include "test_common.h" + +#define FLOW_TAP_TERM 150 +#define PERMISSIVE_HOLD diff --git a/tests/tap_hold_configurations/flow_tap/test.mk b/tests/tap_hold_configurations/flow_tap/test.mk new file mode 100644 index 0000000000..81ba8da66d --- /dev/null +++ b/tests/tap_hold_configurations/flow_tap/test.mk @@ -0,0 +1,18 @@ +# Copyright 2022 Vladislav Kucheriavykh +# +# 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/>. + +COMBO_ENABLE = yes + +INTROSPECTION_KEYMAP_C = test_keymap.c diff --git a/tests/tap_hold_configurations/flow_tap/test_keymap.c b/tests/tap_hold_configurations/flow_tap/test_keymap.c new file mode 100644 index 0000000000..4dfe5e4cb6 --- /dev/null +++ b/tests/tap_hold_configurations/flow_tap/test_keymap.c @@ -0,0 +1,23 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include "quantum.h" + +uint16_t const mt_lt_combo[] = {SFT_T(KC_X), LT(1, KC_Y), COMBO_END}; + +// clang-format off +combo_t key_combos[] = { + COMBO(mt_lt_combo, KC_Z), +}; +// clang-format on diff --git a/tests/tap_hold_configurations/flow_tap/test_tap_hold.cpp b/tests/tap_hold_configurations/flow_tap/test_tap_hold.cpp new file mode 100644 index 0000000000..d419a3b313 --- /dev/null +++ b/tests/tap_hold_configurations/flow_tap/test_tap_hold.cpp @@ -0,0 +1,844 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include "keyboard_report_util.hpp" +#include "keycode.h" +#include "test_common.hpp" +#include "action_tapping.h" +#include "test_fixture.hpp" +#include "test_keymap_key.hpp" + +using testing::_; +using testing::AnyNumber; +using testing::InSequence; + +class FlowTapTest : public TestFixture {}; + +// Test an input of quick distinct taps. All should be settled as tapped. +TEST_F(FlowTapTest, distinct_taps) { + TestDriver driver; + InSequence s; + auto regular_key = KeymapKey(0, 0, 0, KC_A); + auto mod_tap_key1 = KeymapKey(0, 1, 0, SFT_T(KC_B)); + auto mod_tap_key2 = KeymapKey(0, 2, 0, CTL_T(KC_C)); + auto mod_tap_key3 = KeymapKey(0, 3, 0, ALT_T(KC_D)); + + set_keymap({regular_key, mod_tap_key1, mod_tap_key2, mod_tap_key3}); + + // Tap regular key. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_EMPTY_REPORT(driver); + tap_key(regular_key, FLOW_TAP_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Tap mod-tap 1. + EXPECT_REPORT(driver, (KC_B)); + mod_tap_key1.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + idle_for(FLOW_TAP_TERM + 1); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Tap mod-tap 2. + EXPECT_REPORT(driver, (KC_C)); + mod_tap_key2.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + idle_for(FLOW_TAP_TERM + 1); + mod_tap_key2.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Tap mod-tap 3. + EXPECT_REPORT(driver, (KC_D)); + mod_tap_key3.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + idle_for(FLOW_TAP_TERM + 1); + mod_tap_key3.release(); + idle_for(FLOW_TAP_TERM + 1); // Pause between taps. + VERIFY_AND_CLEAR(driver); + + // Tap mod-tap 1. + EXPECT_NO_REPORT(driver); + mod_tap_key1.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_B)); + EXPECT_EMPTY_REPORT(driver); + idle_for(FLOW_TAP_TERM + 1); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Tap mod-tap 2. + EXPECT_REPORT(driver, (KC_C)); + mod_tap_key2.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + idle_for(TAPPING_TERM + 1); + mod_tap_key2.release(); + idle_for(FLOW_TAP_TERM + 1); + VERIFY_AND_CLEAR(driver); +} + +// By default, Flow Tap is disabled when mods other than Shift and AltGr are on. +TEST_F(FlowTapTest, hotkey_taps) { + TestDriver driver; + InSequence s; + auto ctrl_key = KeymapKey(0, 0, 0, KC_LCTL); + auto shft_key = KeymapKey(0, 1, 0, KC_LSFT); + auto alt_key = KeymapKey(0, 2, 0, KC_LALT); + auto gui_key = KeymapKey(0, 3, 0, KC_LGUI); + auto regular_key = KeymapKey(0, 4, 0, KC_A); + auto mod_tap_key = KeymapKey(0, 5, 0, RCTL_T(KC_B)); + + set_keymap({ctrl_key, shft_key, alt_key, gui_key, regular_key, mod_tap_key}); + + for (KeymapKey* mod_key : {&ctrl_key, &alt_key, &gui_key}) { + // Hold mod key. + EXPECT_REPORT(driver, (mod_key->code)); + mod_key->press(); + run_one_scan_loop(); + + // Tap regular key. + EXPECT_REPORT(driver, (mod_key->code, KC_A)); + regular_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (mod_key->code)); + regular_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Press mod-tap, where Flow Tap is disabled due to the held mod. + EXPECT_REPORT(driver, (mod_key->code, KC_RCTL)); + mod_tap_key.press(); + idle_for(TAPPING_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Release mod-tap. + EXPECT_REPORT(driver, (mod_key->code)); + mod_tap_key.release(); + run_one_scan_loop(); + + // Release mod key. + EXPECT_EMPTY_REPORT(driver); + mod_key->release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + } + + // Hold Shift key. + EXPECT_REPORT(driver, (KC_LSFT)); + shft_key.press(); + run_one_scan_loop(); + + // Tap regular key. + EXPECT_REPORT(driver, (KC_LSFT, KC_A)); + regular_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_LSFT)); + regular_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Press mod-tap, where Flow Tap applies to settle as tapped. + EXPECT_REPORT(driver, (KC_LSFT, KC_B)); + mod_tap_key.press(); + idle_for(TAPPING_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Release mod-tap. + EXPECT_REPORT(driver, (KC_LSFT)); + mod_tap_key.release(); + run_one_scan_loop(); + + // Release Shift key. + EXPECT_EMPTY_REPORT(driver); + shft_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +// Test input with two mod-taps in a rolled press quickly after a regular key. +TEST_F(FlowTapTest, rolled_press) { + TestDriver driver; + InSequence s; + auto regular_key = KeymapKey(0, 0, 0, KC_A); + auto mod_tap_key1 = KeymapKey(0, 1, 0, SFT_T(KC_B)); + auto mod_tap_key2 = KeymapKey(0, 2, 0, CTL_T(KC_C)); + + set_keymap({regular_key, mod_tap_key1, mod_tap_key2}); + + // Tap regular key. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_EMPTY_REPORT(driver); + tap_key(regular_key); + VERIFY_AND_CLEAR(driver); + + // Press mod-tap key 1 quickly after regular key. The mod-tap should settle + // immediately as tapped, sending `KC_B`. + EXPECT_REPORT(driver, (KC_B)); + mod_tap_key1.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Press mod-tap key 2 quickly. + EXPECT_REPORT(driver, (KC_B, KC_C)); + mod_tap_key2.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Hold for longer than the tapping term. + EXPECT_NO_REPORT(driver); + idle_for(TAPPING_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Release mod-tap keys. + EXPECT_REPORT(driver, (KC_C)); + EXPECT_EMPTY_REPORT(driver); + mod_tap_key1.release(); + run_one_scan_loop(); + mod_tap_key2.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(FlowTapTest, long_flow_tap_settled_as_held) { + TestDriver driver; + InSequence s; + auto regular_key = KeymapKey(0, 0, 0, KC_A); + auto mod_tap_key = KeymapKey(0, 1, 0, SFT_T(KC_B)); + + set_keymap({regular_key, mod_tap_key}); + + // Tap regular key. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_EMPTY_REPORT(driver); + tap_key(regular_key); + VERIFY_AND_CLEAR(driver); + + EXPECT_NO_REPORT(driver); + idle_for(FLOW_TAP_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Press mod-tap key. + EXPECT_NO_REPORT(driver); + mod_tap_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Hold for the tapping term. + EXPECT_REPORT(driver, (KC_LSFT)); + idle_for(TAPPING_TERM); + VERIFY_AND_CLEAR(driver); + + // Release mod-tap key. + EXPECT_EMPTY_REPORT(driver); + mod_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(FlowTapTest, holding_multiple_mod_taps) { + TestDriver driver; + InSequence s; + auto regular_key = KeymapKey(0, 0, 0, KC_A); + auto mod_tap_key1 = KeymapKey(0, 1, 0, SFT_T(KC_B)); + auto mod_tap_key2 = KeymapKey(0, 2, 0, CTL_T(KC_C)); + + set_keymap({regular_key, mod_tap_key1, mod_tap_key2}); + + // Tap regular key. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_EMPTY_REPORT(driver); + tap_key(regular_key); + VERIFY_AND_CLEAR(driver); + + EXPECT_NO_REPORT(driver); + idle_for(FLOW_TAP_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Press mod-tap keys. + EXPECT_NO_REPORT(driver); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + idle_for(TAPPING_TERM - 5); // Hold almost until tapping term. + VERIFY_AND_CLEAR(driver); + + // Press regular key. + EXPECT_REPORT(driver, (KC_LSFT)); + EXPECT_REPORT(driver, (KC_LSFT, KC_LCTL)); + EXPECT_REPORT(driver, (KC_LSFT, KC_LCTL, KC_A)); + regular_key.press(); + idle_for(10); + VERIFY_AND_CLEAR(driver); + + // Release keys. + EXPECT_REPORT(driver, (KC_LSFT, KC_LCTL)); + EXPECT_REPORT(driver, (KC_LCTL)); + EXPECT_EMPTY_REPORT(driver); + regular_key.release(); + run_one_scan_loop(); + mod_tap_key1.release(); + run_one_scan_loop(); + mod_tap_key2.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(FlowTapTest, holding_mod_tap_with_regular_mod) { + TestDriver driver; + InSequence s; + auto regular_key = KeymapKey(0, 0, 0, KC_A); + auto mod_key = KeymapKey(0, 1, 0, KC_LSFT); + auto mod_tap_key = KeymapKey(0, 2, 0, CTL_T(KC_C)); + + set_keymap({regular_key, mod_key, mod_tap_key}); + + // Tap regular key. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_EMPTY_REPORT(driver); + tap_key(regular_key); + VERIFY_AND_CLEAR(driver); + + EXPECT_NO_REPORT(driver); + idle_for(FLOW_TAP_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Press mod and mod-tap keys. + EXPECT_REPORT(driver, (KC_LSFT)); + mod_key.press(); + run_one_scan_loop(); + mod_tap_key.press(); + idle_for(TAPPING_TERM - 5); // Hold almost until tapping term. + VERIFY_AND_CLEAR(driver); + + // Press regular key. + EXPECT_REPORT(driver, (KC_LSFT, KC_LCTL)); + EXPECT_REPORT(driver, (KC_LSFT, KC_LCTL, KC_A)); + regular_key.press(); + idle_for(10); + VERIFY_AND_CLEAR(driver); + + // Release keys. + EXPECT_REPORT(driver, (KC_LSFT, KC_LCTL)); + EXPECT_REPORT(driver, (KC_LCTL)); + EXPECT_EMPTY_REPORT(driver); + regular_key.release(); + run_one_scan_loop(); + mod_key.release(); + run_one_scan_loop(); + mod_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(FlowTapTest, layer_tap_key) { + TestDriver driver; + InSequence s; + auto regular_key = KeymapKey(0, 0, 0, KC_A); + auto layer_tap_key = KeymapKey(0, 1, 0, LT(1, KC_B)); + auto regular_key2 = KeymapKey(1, 0, 0, KC_C); + + set_keymap({regular_key, layer_tap_key, regular_key2}); + + // Tap regular key. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_EMPTY_REPORT(driver); + tap_key(regular_key); + VERIFY_AND_CLEAR(driver); + + // Press layer-tap key, quickly after the regular key. + EXPECT_REPORT(driver, (KC_B)); + layer_tap_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_NO_REPORT(driver); + idle_for(TAPPING_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Release layer-tap key. + EXPECT_EMPTY_REPORT(driver); + layer_tap_key.release(); + run_one_scan_loop(); + + // Tap regular key. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_EMPTY_REPORT(driver); + tap_key(regular_key); + VERIFY_AND_CLEAR(driver); + + EXPECT_NO_REPORT(driver); + idle_for(FLOW_TAP_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Press layer-tap key, slowly after the regular key. + EXPECT_NO_REPORT(driver); + layer_tap_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_NO_REPORT(driver); + idle_for(TAPPING_TERM + 1); + EXPECT_EQ(layer_state, 1 << 1); + VERIFY_AND_CLEAR(driver); + + // Tap regular key2. + EXPECT_REPORT(driver, (KC_C)); + EXPECT_EMPTY_REPORT(driver); + tap_key(regular_key); + VERIFY_AND_CLEAR(driver); + + // Release layer-tap key. + EXPECT_NO_REPORT(driver); + layer_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(FlowTapTest, layer_tap_ignored_with_disabled_key) { + TestDriver driver; + InSequence s; + auto no_key = KeymapKey(0, 0, 0, KC_NO); + auto regular_key = KeymapKey(1, 0, 0, KC_ESC); + auto layer_tap_key = KeymapKey(0, 1, 0, LT(1, KC_A)); + auto mod_tap_key = KeymapKey(0, 2, 0, CTL_T(KC_B)); + + set_keymap({no_key, regular_key, layer_tap_key, mod_tap_key}); + + EXPECT_REPORT(driver, (KC_ESC)); + EXPECT_EMPTY_REPORT(driver); + layer_tap_key.press(); + idle_for(TAPPING_TERM + 1); + tap_key(regular_key); + layer_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_LCTL)); + mod_tap_key.press(); + idle_for(TAPPING_TERM + 1); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + mod_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(FlowTapTest, layer_tap_ignored_with_disabled_key_complex) { + TestDriver driver; + InSequence s; + auto regular_key1 = KeymapKey(0, 0, 0, KC_Q); + auto layer_tap_key = KeymapKey(0, 1, 0, LT(1, KC_SPC)); + auto mod_tap_key1 = KeymapKey(0, 2, 0, CTL_T(KC_T)); + // Place RALT_T(KC_I), where Flow Tap is enabled, in the same position on + // layer 0 as KC_RGHT, where Flow Tap is disabled. This tests that Flow Tap + // tracks the keycode from the correct layer. + auto mod_tap_key2 = KeymapKey(0, 3, 0, RALT_T(KC_I)); + auto regular_key2 = KeymapKey(1, 3, 0, KC_RGHT); + + set_keymap({regular_key1, layer_tap_key, mod_tap_key1, mod_tap_key2, regular_key2}); + + // Tap regular key 1. + EXPECT_REPORT(driver, (KC_Q)); + EXPECT_EMPTY_REPORT(driver); + tap_key(regular_key1); + idle_for(FLOW_TAP_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Hold layer-tap key. + EXPECT_NO_REPORT(driver); + layer_tap_key.press(); + run_one_scan_loop(); + // idle_for(TAPPING_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Tap regular key 2. + EXPECT_REPORT(driver, (KC_RGHT)); + EXPECT_EMPTY_REPORT(driver); + tap_key(regular_key2); + VERIFY_AND_CLEAR(driver); + + // Release layer-tap key. + EXPECT_NO_REPORT(driver); + layer_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Quickly hold mod-tap key 1. + EXPECT_NO_REPORT(driver); + mod_tap_key1.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_LCTL)); + EXPECT_REPORT(driver, (KC_LCTL, KC_Q)); + EXPECT_REPORT(driver, (KC_LCTL)); + tap_key(regular_key1); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(FlowTapTest, layer_tap_ignored_with_enabled_key) { + TestDriver driver; + InSequence s; + auto no_key = KeymapKey(0, 0, 0, KC_NO); + auto regular_key = KeymapKey(1, 0, 0, KC_C); + auto layer_tap_key = KeymapKey(0, 1, 0, LT(1, KC_A)); + auto mod_tap_key = KeymapKey(0, 2, 0, CTL_T(KC_B)); + + set_keymap({no_key, regular_key, layer_tap_key, mod_tap_key}); + + EXPECT_REPORT(driver, (KC_C)); + EXPECT_EMPTY_REPORT(driver); + layer_tap_key.press(); + idle_for(TAPPING_TERM + 1); + tap_key(regular_key); + layer_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_B)); + mod_tap_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_EMPTY_REPORT(driver); + idle_for(TAPPING_TERM + 1); + mod_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(FlowTapTest, combo_key) { + TestDriver driver; + InSequence s; + auto regular_key = KeymapKey(0, 0, 0, KC_A); + auto mod_tap_key = KeymapKey(0, 1, 0, SFT_T(KC_X)); + auto layer_tap_key = KeymapKey(0, 2, 0, LT(1, KC_Y)); + + set_keymap({regular_key, mod_tap_key, layer_tap_key}); + + // Tap regular key. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_EMPTY_REPORT(driver); + tap_key(regular_key); + VERIFY_AND_CLEAR(driver); + + // Press combo keys quickly after regular key. + EXPECT_REPORT(driver, (KC_Z)); + EXPECT_EMPTY_REPORT(driver); + tap_combo({mod_tap_key, layer_tap_key}); + VERIFY_AND_CLEAR(driver); + + // Press mod-tap key quickly. + EXPECT_REPORT(driver, (KC_X)); + mod_tap_key.press(); + idle_for(TAPPING_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Release mod-tap key. + EXPECT_EMPTY_REPORT(driver); + mod_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(FlowTapTest, oneshot_mod_key) { + TestDriver driver; + InSequence s; + auto regular_key = KeymapKey(0, 0, 0, KC_A); + auto osm_key = KeymapKey(0, 1, 0, OSM(MOD_LSFT)); + + set_keymap({regular_key, osm_key}); + + // Tap regular key. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_EMPTY_REPORT(driver); + tap_key(regular_key); + VERIFY_AND_CLEAR(driver); + + // Tap OSM, tap regular key. + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT))).Times(AnyNumber()); + EXPECT_REPORT(driver, (KC_LSFT, KC_A)); + EXPECT_EMPTY_REPORT(driver); + tap_key(osm_key); + tap_key(regular_key); + VERIFY_AND_CLEAR(driver); + + // Nested press of OSM and regular keys. + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT))).Times(AnyNumber()); + EXPECT_REPORT(driver, (KC_LSFT, KC_A)); + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT))).Times(AnyNumber()); + EXPECT_EMPTY_REPORT(driver); + osm_key.press(); + run_one_scan_loop(); + tap_key(regular_key); + osm_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(FlowTapTest, quick_tap) { + TestDriver driver; + InSequence s; + auto mod_tap_key = KeymapKey(0, 1, 0, SFT_T(KC_A)); + + set_keymap({mod_tap_key}); + + EXPECT_REPORT(driver, (KC_A)); + EXPECT_EMPTY_REPORT(driver); + tap_key(mod_tap_key); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_A)); + mod_tap_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_NO_REPORT(driver); + idle_for(TAPPING_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Release mod-tap key. + EXPECT_EMPTY_REPORT(driver); + mod_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(FlowTapTest, rolling_mt_mt) { + TestDriver driver; + InSequence s; + auto mod_tap_key1 = KeymapKey(0, 1, 0, SFT_T(KC_A)); + auto mod_tap_key2 = KeymapKey(0, 2, 0, CTL_T(KC_B)); + + set_keymap({mod_tap_key1, mod_tap_key2}); + + EXPECT_NO_REPORT(driver); + idle_for(FLOW_TAP_TERM + 1); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_A)); + EXPECT_REPORT(driver, (KC_A, KC_B)); + EXPECT_REPORT(driver, (KC_B)); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Hold for longer than the tapping term. + EXPECT_NO_REPORT(driver); + idle_for(TAPPING_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Release mod-tap keys. + EXPECT_EMPTY_REPORT(driver); + mod_tap_key2.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(FlowTapTest, rolling_lt_mt_regular) { + TestDriver driver; + InSequence s; + auto layer_tap_key = KeymapKey(0, 0, 0, LT(1, KC_A)); + auto mod_tap_key = KeymapKey(0, 1, 0, CTL_T(KC_B)); + auto regular_key = KeymapKey(0, 2, 0, KC_C); + + set_keymap({layer_tap_key, mod_tap_key, regular_key}); + + EXPECT_NO_REPORT(driver); + idle_for(FLOW_TAP_TERM + 1); + layer_tap_key.press(); + run_one_scan_loop(); + mod_tap_key.press(); + run_one_scan_loop(); + regular_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_A)); + EXPECT_REPORT(driver, (KC_A, KC_B)); + EXPECT_REPORT(driver, (KC_A, KC_B, KC_C)); + EXPECT_REPORT(driver, (KC_B, KC_C)); + layer_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Hold for longer than the tapping term. + EXPECT_NO_REPORT(driver); + idle_for(TAPPING_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Release mod-tap keys. + EXPECT_REPORT(driver, (KC_C)); + EXPECT_EMPTY_REPORT(driver); + mod_tap_key.release(); + run_one_scan_loop(); + regular_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(FlowTapTest, rolling_lt_regular_mt) { + TestDriver driver; + InSequence s; + auto layer_tap_key = KeymapKey(0, 0, 0, LT(1, KC_A)); + auto regular_key = KeymapKey(0, 1, 0, KC_B); + auto mod_tap_key = KeymapKey(0, 2, 0, CTL_T(KC_C)); + + set_keymap({layer_tap_key, regular_key, mod_tap_key}); + + EXPECT_NO_REPORT(driver); + idle_for(FLOW_TAP_TERM + 1); + layer_tap_key.press(); + run_one_scan_loop(); + regular_key.press(); + run_one_scan_loop(); + mod_tap_key.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + EXPECT_REPORT(driver, (KC_A)); + EXPECT_REPORT(driver, (KC_A, KC_B)); + EXPECT_REPORT(driver, (KC_A, KC_B, KC_C)); + EXPECT_REPORT(driver, (KC_B, KC_C)); + layer_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Hold for longer than the tapping term. + EXPECT_NO_REPORT(driver); + idle_for(TAPPING_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Release mod-tap keys. + EXPECT_REPORT(driver, (KC_C)); + EXPECT_EMPTY_REPORT(driver); + regular_key.release(); + run_one_scan_loop(); + mod_tap_key.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(FlowTapTest, rolling_mt_mt_mt) { + TestDriver driver; + InSequence s; + auto mod_tap_key1 = KeymapKey(0, 0, 0, CTL_T(KC_A)); + auto mod_tap_key2 = KeymapKey(0, 1, 0, GUI_T(KC_B)); + auto mod_tap_key3 = KeymapKey(0, 2, 0, ALT_T(KC_C)); + + set_keymap({mod_tap_key1, mod_tap_key2, mod_tap_key3}); + + // Press mod-tap keys. + EXPECT_NO_REPORT(driver); + idle_for(FLOW_TAP_TERM + 1); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + run_one_scan_loop(); + mod_tap_key3.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release first mod-tap key. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_REPORT(driver, (KC_A, KC_B)); + EXPECT_REPORT(driver, (KC_A, KC_B, KC_C)); + EXPECT_REPORT(driver, (KC_B, KC_C)); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Hold for longer than the tapping term. + EXPECT_NO_REPORT(driver); + idle_for(TAPPING_TERM + 1); + VERIFY_AND_CLEAR(driver); + + // Release other mod-tap keys. + EXPECT_REPORT(driver, (KC_C)); + EXPECT_EMPTY_REPORT(driver); + mod_tap_key2.release(); + run_one_scan_loop(); + mod_tap_key3.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} + +TEST_F(FlowTapTest, roll_release_132) { + TestDriver driver; + InSequence s; + auto mod_tap_key1 = KeymapKey(0, 0, 0, CTL_T(KC_A)); + auto mod_tap_key2 = KeymapKey(0, 1, 0, GUI_T(KC_B)); + auto mod_tap_key3 = KeymapKey(0, 2, 0, ALT_T(KC_C)); + + set_keymap({mod_tap_key1, mod_tap_key2, mod_tap_key3}); + + // Press mod-tap keys. + EXPECT_NO_REPORT(driver); + idle_for(FLOW_TAP_TERM + 1); + mod_tap_key1.press(); + run_one_scan_loop(); + mod_tap_key2.press(); + idle_for(FLOW_TAP_TERM + 1); + mod_tap_key3.press(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release first mod-tap key. + EXPECT_REPORT(driver, (KC_A)); + EXPECT_REPORT(driver, (KC_A, KC_B)); + EXPECT_REPORT(driver, (KC_B)); + mod_tap_key1.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); + + // Release other mod-tap keys. + EXPECT_REPORT(driver, (KC_B, KC_C)); + EXPECT_REPORT(driver, (KC_B)); + EXPECT_EMPTY_REPORT(driver); + mod_tap_key3.release(); + run_one_scan_loop(); + mod_tap_key2.release(); + run_one_scan_loop(); + VERIFY_AND_CLEAR(driver); +} diff --git a/tests/test_common/build.mk b/tests/test_common/build.mk index d7423bc78a..385da7adf9 100644 --- a/tests/test_common/build.mk +++ b/tests/test_common/build.mk @@ -14,3 +14,4 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. CUSTOM_MATRIX=yes +KEYCODE_STRING_ENABLE = yes diff --git a/tests/test_common/keyboard_report_util.cpp b/tests/test_common/keyboard_report_util.cpp index 18e0574277..5e40323669 100644 --- a/tests/test_common/keyboard_report_util.cpp +++ b/tests/test_common/keyboard_report_util.cpp @@ -19,6 +19,10 @@ #include <vector> #include <algorithm> +extern "C" { +#include "keycode_string.h" +} + using namespace testing; extern std::map<uint16_t, std::string> KEYCODE_ID_TABLE; @@ -72,7 +76,7 @@ std::ostream& operator<<(std::ostream& os, const report_keyboard_t& report) { os << "("; for (auto key = keys.cbegin(); key != keys.cend();) { - os << KEYCODE_ID_TABLE.at(*key); + os << get_keycode_string(*key); key++; if (key != keys.cend()) { os << ", "; @@ -82,7 +86,7 @@ std::ostream& operator<<(std::ostream& os, const report_keyboard_t& report) { os << ") ["; for (auto mod = mods.cbegin(); mod != mods.cend();) { - os << KEYCODE_ID_TABLE.at(*mod); + os << get_keycode_string(*mod); mod++; if (mod != mods.cend()) { os << ", "; diff --git a/tests/test_common/keycode_table.cpp b/tests/test_common/keycode_table.cpp deleted file mode 100644 index 26d0919619..0000000000 --- a/tests/test_common/keycode_table.cpp +++ /dev/null @@ -1,767 +0,0 @@ -// Copyright 2025 QMK -// SPDX-License-Identifier: GPL-2.0-or-later - -/******************************************************************************* - 88888888888 888 d8b .d888 d8b 888 d8b - 888 888 Y8P d88P" Y8P 888 Y8P - 888 888 888 888 - 888 88888b. 888 .d8888b 888888 888 888 .d88b. 888 .d8888b - 888 888 "88b 888 88K 888 888 888 d8P Y8b 888 88K - 888 888 888 888 "Y8888b. 888 888 888 88888888 888 "Y8888b. - 888 888 888 888 X88 888 888 888 Y8b. 888 X88 - 888 888 888 888 88888P' 888 888 888 "Y8888 888 88888P' - 888 888 - 888 888 - 888 888 - .d88b. .d88b. 88888b. .d88b. 888d888 8888b. 888888 .d88b. .d88888 - d88P"88b d8P Y8b 888 "88b d8P Y8b 888P" "88b 888 d8P Y8b d88" 888 - 888 888 88888888 888 888 88888888 888 .d888888 888 88888888 888 888 - Y88b 888 Y8b. 888 888 Y8b. 888 888 888 Y88b. Y8b. Y88b 888 - "Y88888 "Y8888 888 888 "Y8888 888 "Y888888 "Y888 "Y8888 "Y88888 - 888 - Y8b d88P - "Y88P" -*******************************************************************************/ - -// clang-format off -extern "C" { -#include <keycode.h> -} -#include <map> -#include <string> -#include <cstdint> - -std::map<uint16_t, std::string> KEYCODE_ID_TABLE = { - {KC_NO, "KC_NO"}, - {KC_TRANSPARENT, "KC_TRANSPARENT"}, - {KC_A, "KC_A"}, - {KC_B, "KC_B"}, - {KC_C, "KC_C"}, - {KC_D, "KC_D"}, - {KC_E, "KC_E"}, - {KC_F, "KC_F"}, - {KC_G, "KC_G"}, - {KC_H, "KC_H"}, - {KC_I, "KC_I"}, - {KC_J, "KC_J"}, - {KC_K, "KC_K"}, - {KC_L, "KC_L"}, - {KC_M, "KC_M"}, - {KC_N, "KC_N"}, - {KC_O, "KC_O"}, - {KC_P, "KC_P"}, - {KC_Q, "KC_Q"}, - {KC_R, "KC_R"}, - {KC_S, "KC_S"}, - {KC_T, "KC_T"}, - {KC_U, "KC_U"}, - {KC_V, "KC_V"}, - {KC_W, "KC_W"}, - {KC_X, "KC_X"}, - {KC_Y, "KC_Y"}, - {KC_Z, "KC_Z"}, - {KC_1, "KC_1"}, - {KC_2, "KC_2"}, - {KC_3, "KC_3"}, - {KC_4, "KC_4"}, - {KC_5, "KC_5"}, - {KC_6, "KC_6"}, - {KC_7, "KC_7"}, - {KC_8, "KC_8"}, - {KC_9, "KC_9"}, - {KC_0, "KC_0"}, - {KC_ENTER, "KC_ENTER"}, - {KC_ESCAPE, "KC_ESCAPE"}, - {KC_BACKSPACE, "KC_BACKSPACE"}, - {KC_TAB, "KC_TAB"}, - {KC_SPACE, "KC_SPACE"}, - {KC_MINUS, "KC_MINUS"}, - {KC_EQUAL, "KC_EQUAL"}, - {KC_LEFT_BRACKET, "KC_LEFT_BRACKET"}, - {KC_RIGHT_BRACKET, "KC_RIGHT_BRACKET"}, - {KC_BACKSLASH, "KC_BACKSLASH"}, - {KC_NONUS_HASH, "KC_NONUS_HASH"}, - {KC_SEMICOLON, "KC_SEMICOLON"}, - {KC_QUOTE, "KC_QUOTE"}, - {KC_GRAVE, "KC_GRAVE"}, - {KC_COMMA, "KC_COMMA"}, - {KC_DOT, "KC_DOT"}, - {KC_SLASH, "KC_SLASH"}, - {KC_CAPS_LOCK, "KC_CAPS_LOCK"}, - {KC_F1, "KC_F1"}, - {KC_F2, "KC_F2"}, - {KC_F3, "KC_F3"}, - {KC_F4, "KC_F4"}, - {KC_F5, "KC_F5"}, - {KC_F6, "KC_F6"}, - {KC_F7, "KC_F7"}, - {KC_F8, "KC_F8"}, - {KC_F9, "KC_F9"}, - {KC_F10, "KC_F10"}, - {KC_F11, "KC_F11"}, - {KC_F12, "KC_F12"}, - {KC_PRINT_SCREEN, "KC_PRINT_SCREEN"}, - {KC_SCROLL_LOCK, "KC_SCROLL_LOCK"}, - {KC_PAUSE, "KC_PAUSE"}, - {KC_INSERT, "KC_INSERT"}, - {KC_HOME, "KC_HOME"}, - {KC_PAGE_UP, "KC_PAGE_UP"}, - {KC_DELETE, "KC_DELETE"}, - {KC_END, "KC_END"}, - {KC_PAGE_DOWN, "KC_PAGE_DOWN"}, - {KC_RIGHT, "KC_RIGHT"}, - {KC_LEFT, "KC_LEFT"}, - {KC_DOWN, "KC_DOWN"}, - {KC_UP, "KC_UP"}, - {KC_NUM_LOCK, "KC_NUM_LOCK"}, - {KC_KP_SLASH, "KC_KP_SLASH"}, - {KC_KP_ASTERISK, "KC_KP_ASTERISK"}, - {KC_KP_MINUS, "KC_KP_MINUS"}, - {KC_KP_PLUS, "KC_KP_PLUS"}, - {KC_KP_ENTER, "KC_KP_ENTER"}, - {KC_KP_1, "KC_KP_1"}, - {KC_KP_2, "KC_KP_2"}, - {KC_KP_3, "KC_KP_3"}, - {KC_KP_4, "KC_KP_4"}, - {KC_KP_5, "KC_KP_5"}, - {KC_KP_6, "KC_KP_6"}, - {KC_KP_7, "KC_KP_7"}, - {KC_KP_8, "KC_KP_8"}, - {KC_KP_9, "KC_KP_9"}, - {KC_KP_0, "KC_KP_0"}, - {KC_KP_DOT, "KC_KP_DOT"}, - {KC_NONUS_BACKSLASH, "KC_NONUS_BACKSLASH"}, - {KC_APPLICATION, "KC_APPLICATION"}, - {KC_KB_POWER, "KC_KB_POWER"}, - {KC_KP_EQUAL, "KC_KP_EQUAL"}, - {KC_F13, "KC_F13"}, - {KC_F14, "KC_F14"}, - {KC_F15, "KC_F15"}, - {KC_F16, "KC_F16"}, - {KC_F17, "KC_F17"}, - {KC_F18, "KC_F18"}, - {KC_F19, "KC_F19"}, - {KC_F20, "KC_F20"}, - {KC_F21, "KC_F21"}, - {KC_F22, "KC_F22"}, - {KC_F23, "KC_F23"}, - {KC_F24, "KC_F24"}, - {KC_EXECUTE, "KC_EXECUTE"}, - {KC_HELP, "KC_HELP"}, - {KC_MENU, "KC_MENU"}, - {KC_SELECT, "KC_SELECT"}, - {KC_STOP, "KC_STOP"}, - {KC_AGAIN, "KC_AGAIN"}, - {KC_UNDO, "KC_UNDO"}, - {KC_CUT, "KC_CUT"}, - {KC_COPY, "KC_COPY"}, - {KC_PASTE, "KC_PASTE"}, - {KC_FIND, "KC_FIND"}, - {KC_KB_MUTE, "KC_KB_MUTE"}, - {KC_KB_VOLUME_UP, "KC_KB_VOLUME_UP"}, - {KC_KB_VOLUME_DOWN, "KC_KB_VOLUME_DOWN"}, - {KC_LOCKING_CAPS_LOCK, "KC_LOCKING_CAPS_LOCK"}, - {KC_LOCKING_NUM_LOCK, "KC_LOCKING_NUM_LOCK"}, - {KC_LOCKING_SCROLL_LOCK, "KC_LOCKING_SCROLL_LOCK"}, - {KC_KP_COMMA, "KC_KP_COMMA"}, - {KC_KP_EQUAL_AS400, "KC_KP_EQUAL_AS400"}, - {KC_INTERNATIONAL_1, "KC_INTERNATIONAL_1"}, - {KC_INTERNATIONAL_2, "KC_INTERNATIONAL_2"}, - {KC_INTERNATIONAL_3, "KC_INTERNATIONAL_3"}, - {KC_INTERNATIONAL_4, "KC_INTERNATIONAL_4"}, - {KC_INTERNATIONAL_5, "KC_INTERNATIONAL_5"}, - {KC_INTERNATIONAL_6, "KC_INTERNATIONAL_6"}, - {KC_INTERNATIONAL_7, "KC_INTERNATIONAL_7"}, - {KC_INTERNATIONAL_8, "KC_INTERNATIONAL_8"}, - {KC_INTERNATIONAL_9, "KC_INTERNATIONAL_9"}, - {KC_LANGUAGE_1, "KC_LANGUAGE_1"}, - {KC_LANGUAGE_2, "KC_LANGUAGE_2"}, - {KC_LANGUAGE_3, "KC_LANGUAGE_3"}, - {KC_LANGUAGE_4, "KC_LANGUAGE_4"}, - {KC_LANGUAGE_5, "KC_LANGUAGE_5"}, - {KC_LANGUAGE_6, "KC_LANGUAGE_6"}, - {KC_LANGUAGE_7, "KC_LANGUAGE_7"}, - {KC_LANGUAGE_8, "KC_LANGUAGE_8"}, - {KC_LANGUAGE_9, "KC_LANGUAGE_9"}, - {KC_ALTERNATE_ERASE, "KC_ALTERNATE_ERASE"}, - {KC_SYSTEM_REQUEST, "KC_SYSTEM_REQUEST"}, - {KC_CANCEL, "KC_CANCEL"}, - {KC_CLEAR, "KC_CLEAR"}, - {KC_PRIOR, "KC_PRIOR"}, - {KC_RETURN, "KC_RETURN"}, - {KC_SEPARATOR, "KC_SEPARATOR"}, - {KC_OUT, "KC_OUT"}, - {KC_OPER, "KC_OPER"}, - {KC_CLEAR_AGAIN, "KC_CLEAR_AGAIN"}, - {KC_CRSEL, "KC_CRSEL"}, - {KC_EXSEL, "KC_EXSEL"}, - {KC_SYSTEM_POWER, "KC_SYSTEM_POWER"}, - {KC_SYSTEM_SLEEP, "KC_SYSTEM_SLEEP"}, - {KC_SYSTEM_WAKE, "KC_SYSTEM_WAKE"}, - {KC_AUDIO_MUTE, "KC_AUDIO_MUTE"}, - {KC_AUDIO_VOL_UP, "KC_AUDIO_VOL_UP"}, - {KC_AUDIO_VOL_DOWN, "KC_AUDIO_VOL_DOWN"}, - {KC_MEDIA_NEXT_TRACK, "KC_MEDIA_NEXT_TRACK"}, - {KC_MEDIA_PREV_TRACK, "KC_MEDIA_PREV_TRACK"}, - {KC_MEDIA_STOP, "KC_MEDIA_STOP"}, - {KC_MEDIA_PLAY_PAUSE, "KC_MEDIA_PLAY_PAUSE"}, - {KC_MEDIA_SELECT, "KC_MEDIA_SELECT"}, - {KC_MEDIA_EJECT, "KC_MEDIA_EJECT"}, - {KC_MAIL, "KC_MAIL"}, - {KC_CALCULATOR, "KC_CALCULATOR"}, - {KC_MY_COMPUTER, "KC_MY_COMPUTER"}, - {KC_WWW_SEARCH, "KC_WWW_SEARCH"}, - {KC_WWW_HOME, "KC_WWW_HOME"}, - {KC_WWW_BACK, "KC_WWW_BACK"}, - {KC_WWW_FORWARD, "KC_WWW_FORWARD"}, - {KC_WWW_STOP, "KC_WWW_STOP"}, - {KC_WWW_REFRESH, "KC_WWW_REFRESH"}, - {KC_WWW_FAVORITES, "KC_WWW_FAVORITES"}, - {KC_MEDIA_FAST_FORWARD, "KC_MEDIA_FAST_FORWARD"}, - {KC_MEDIA_REWIND, "KC_MEDIA_REWIND"}, - {KC_BRIGHTNESS_UP, "KC_BRIGHTNESS_UP"}, - {KC_BRIGHTNESS_DOWN, "KC_BRIGHTNESS_DOWN"}, - {KC_CONTROL_PANEL, "KC_CONTROL_PANEL"}, - {KC_ASSISTANT, "KC_ASSISTANT"}, - {KC_MISSION_CONTROL, "KC_MISSION_CONTROL"}, - {KC_LAUNCHPAD, "KC_LAUNCHPAD"}, - {QK_MOUSE_CURSOR_UP, "QK_MOUSE_CURSOR_UP"}, - {QK_MOUSE_CURSOR_DOWN, "QK_MOUSE_CURSOR_DOWN"}, - {QK_MOUSE_CURSOR_LEFT, "QK_MOUSE_CURSOR_LEFT"}, - {QK_MOUSE_CURSOR_RIGHT, "QK_MOUSE_CURSOR_RIGHT"}, - {QK_MOUSE_BUTTON_1, "QK_MOUSE_BUTTON_1"}, - {QK_MOUSE_BUTTON_2, "QK_MOUSE_BUTTON_2"}, - {QK_MOUSE_BUTTON_3, "QK_MOUSE_BUTTON_3"}, - {QK_MOUSE_BUTTON_4, "QK_MOUSE_BUTTON_4"}, - {QK_MOUSE_BUTTON_5, "QK_MOUSE_BUTTON_5"}, - {QK_MOUSE_BUTTON_6, "QK_MOUSE_BUTTON_6"}, - {QK_MOUSE_BUTTON_7, "QK_MOUSE_BUTTON_7"}, - {QK_MOUSE_BUTTON_8, "QK_MOUSE_BUTTON_8"}, - {QK_MOUSE_WHEEL_UP, "QK_MOUSE_WHEEL_UP"}, - {QK_MOUSE_WHEEL_DOWN, "QK_MOUSE_WHEEL_DOWN"}, - {QK_MOUSE_WHEEL_LEFT, "QK_MOUSE_WHEEL_LEFT"}, - {QK_MOUSE_WHEEL_RIGHT, "QK_MOUSE_WHEEL_RIGHT"}, - {QK_MOUSE_ACCELERATION_0, "QK_MOUSE_ACCELERATION_0"}, - {QK_MOUSE_ACCELERATION_1, "QK_MOUSE_ACCELERATION_1"}, - {QK_MOUSE_ACCELERATION_2, "QK_MOUSE_ACCELERATION_2"}, - {KC_LEFT_CTRL, "KC_LEFT_CTRL"}, - {KC_LEFT_SHIFT, "KC_LEFT_SHIFT"}, - {KC_LEFT_ALT, "KC_LEFT_ALT"}, - {KC_LEFT_GUI, "KC_LEFT_GUI"}, - {KC_RIGHT_CTRL, "KC_RIGHT_CTRL"}, - {KC_RIGHT_SHIFT, "KC_RIGHT_SHIFT"}, - {KC_RIGHT_ALT, "KC_RIGHT_ALT"}, - {KC_RIGHT_GUI, "KC_RIGHT_GUI"}, - {QK_SWAP_HANDS_TOGGLE, "QK_SWAP_HANDS_TOGGLE"}, - {QK_SWAP_HANDS_TAP_TOGGLE, "QK_SWAP_HANDS_TAP_TOGGLE"}, - {QK_SWAP_HANDS_MOMENTARY_ON, "QK_SWAP_HANDS_MOMENTARY_ON"}, - {QK_SWAP_HANDS_MOMENTARY_OFF, "QK_SWAP_HANDS_MOMENTARY_OFF"}, - {QK_SWAP_HANDS_OFF, "QK_SWAP_HANDS_OFF"}, - {QK_SWAP_HANDS_ON, "QK_SWAP_HANDS_ON"}, - {QK_SWAP_HANDS_ONE_SHOT, "QK_SWAP_HANDS_ONE_SHOT"}, - {QK_MAGIC_SWAP_CONTROL_CAPS_LOCK, "QK_MAGIC_SWAP_CONTROL_CAPS_LOCK"}, - {QK_MAGIC_UNSWAP_CONTROL_CAPS_LOCK, "QK_MAGIC_UNSWAP_CONTROL_CAPS_LOCK"}, - {QK_MAGIC_TOGGLE_CONTROL_CAPS_LOCK, "QK_MAGIC_TOGGLE_CONTROL_CAPS_LOCK"}, - {QK_MAGIC_CAPS_LOCK_AS_CONTROL_OFF, "QK_MAGIC_CAPS_LOCK_AS_CONTROL_OFF"}, - {QK_MAGIC_CAPS_LOCK_AS_CONTROL_ON, "QK_MAGIC_CAPS_LOCK_AS_CONTROL_ON"}, - {QK_MAGIC_SWAP_LALT_LGUI, "QK_MAGIC_SWAP_LALT_LGUI"}, - {QK_MAGIC_UNSWAP_LALT_LGUI, "QK_MAGIC_UNSWAP_LALT_LGUI"}, - {QK_MAGIC_SWAP_RALT_RGUI, "QK_MAGIC_SWAP_RALT_RGUI"}, - {QK_MAGIC_UNSWAP_RALT_RGUI, "QK_MAGIC_UNSWAP_RALT_RGUI"}, - {QK_MAGIC_GUI_ON, "QK_MAGIC_GUI_ON"}, - {QK_MAGIC_GUI_OFF, "QK_MAGIC_GUI_OFF"}, - {QK_MAGIC_TOGGLE_GUI, "QK_MAGIC_TOGGLE_GUI"}, - {QK_MAGIC_SWAP_GRAVE_ESC, "QK_MAGIC_SWAP_GRAVE_ESC"}, - {QK_MAGIC_UNSWAP_GRAVE_ESC, "QK_MAGIC_UNSWAP_GRAVE_ESC"}, - {QK_MAGIC_SWAP_BACKSLASH_BACKSPACE, "QK_MAGIC_SWAP_BACKSLASH_BACKSPACE"}, - {QK_MAGIC_UNSWAP_BACKSLASH_BACKSPACE, "QK_MAGIC_UNSWAP_BACKSLASH_BACKSPACE"}, - {QK_MAGIC_TOGGLE_BACKSLASH_BACKSPACE, "QK_MAGIC_TOGGLE_BACKSLASH_BACKSPACE"}, - {QK_MAGIC_NKRO_ON, "QK_MAGIC_NKRO_ON"}, - {QK_MAGIC_NKRO_OFF, "QK_MAGIC_NKRO_OFF"}, - {QK_MAGIC_TOGGLE_NKRO, "QK_MAGIC_TOGGLE_NKRO"}, - {QK_MAGIC_SWAP_ALT_GUI, "QK_MAGIC_SWAP_ALT_GUI"}, - {QK_MAGIC_UNSWAP_ALT_GUI, "QK_MAGIC_UNSWAP_ALT_GUI"}, - {QK_MAGIC_TOGGLE_ALT_GUI, "QK_MAGIC_TOGGLE_ALT_GUI"}, - {QK_MAGIC_SWAP_LCTL_LGUI, "QK_MAGIC_SWAP_LCTL_LGUI"}, - {QK_MAGIC_UNSWAP_LCTL_LGUI, "QK_MAGIC_UNSWAP_LCTL_LGUI"}, - {QK_MAGIC_SWAP_RCTL_RGUI, "QK_MAGIC_SWAP_RCTL_RGUI"}, - {QK_MAGIC_UNSWAP_RCTL_RGUI, "QK_MAGIC_UNSWAP_RCTL_RGUI"}, - {QK_MAGIC_SWAP_CTL_GUI, "QK_MAGIC_SWAP_CTL_GUI"}, - {QK_MAGIC_UNSWAP_CTL_GUI, "QK_MAGIC_UNSWAP_CTL_GUI"}, - {QK_MAGIC_TOGGLE_CTL_GUI, "QK_MAGIC_TOGGLE_CTL_GUI"}, - {QK_MAGIC_EE_HANDS_LEFT, "QK_MAGIC_EE_HANDS_LEFT"}, - {QK_MAGIC_EE_HANDS_RIGHT, "QK_MAGIC_EE_HANDS_RIGHT"}, - {QK_MAGIC_SWAP_ESCAPE_CAPS_LOCK, "QK_MAGIC_SWAP_ESCAPE_CAPS_LOCK"}, - {QK_MAGIC_UNSWAP_ESCAPE_CAPS_LOCK, "QK_MAGIC_UNSWAP_ESCAPE_CAPS_LOCK"}, - {QK_MAGIC_TOGGLE_ESCAPE_CAPS_LOCK, "QK_MAGIC_TOGGLE_ESCAPE_CAPS_LOCK"}, - {QK_MIDI_ON, "QK_MIDI_ON"}, - {QK_MIDI_OFF, "QK_MIDI_OFF"}, - {QK_MIDI_TOGGLE, "QK_MIDI_TOGGLE"}, - {QK_MIDI_NOTE_C_0, "QK_MIDI_NOTE_C_0"}, - {QK_MIDI_NOTE_C_SHARP_0, "QK_MIDI_NOTE_C_SHARP_0"}, - {QK_MIDI_NOTE_D_0, "QK_MIDI_NOTE_D_0"}, - {QK_MIDI_NOTE_D_SHARP_0, "QK_MIDI_NOTE_D_SHARP_0"}, - {QK_MIDI_NOTE_E_0, "QK_MIDI_NOTE_E_0"}, - {QK_MIDI_NOTE_F_0, "QK_MIDI_NOTE_F_0"}, - {QK_MIDI_NOTE_F_SHARP_0, "QK_MIDI_NOTE_F_SHARP_0"}, - {QK_MIDI_NOTE_G_0, "QK_MIDI_NOTE_G_0"}, - {QK_MIDI_NOTE_G_SHARP_0, "QK_MIDI_NOTE_G_SHARP_0"}, - {QK_MIDI_NOTE_A_0, "QK_MIDI_NOTE_A_0"}, - {QK_MIDI_NOTE_A_SHARP_0, "QK_MIDI_NOTE_A_SHARP_0"}, - {QK_MIDI_NOTE_B_0, "QK_MIDI_NOTE_B_0"}, - {QK_MIDI_NOTE_C_1, "QK_MIDI_NOTE_C_1"}, - {QK_MIDI_NOTE_C_SHARP_1, "QK_MIDI_NOTE_C_SHARP_1"}, - {QK_MIDI_NOTE_D_1, "QK_MIDI_NOTE_D_1"}, - {QK_MIDI_NOTE_D_SHARP_1, "QK_MIDI_NOTE_D_SHARP_1"}, - {QK_MIDI_NOTE_E_1, "QK_MIDI_NOTE_E_1"}, - {QK_MIDI_NOTE_F_1, "QK_MIDI_NOTE_F_1"}, - {QK_MIDI_NOTE_F_SHARP_1, "QK_MIDI_NOTE_F_SHARP_1"}, - {QK_MIDI_NOTE_G_1, "QK_MIDI_NOTE_G_1"}, - {QK_MIDI_NOTE_G_SHARP_1, "QK_MIDI_NOTE_G_SHARP_1"}, - {QK_MIDI_NOTE_A_1, "QK_MIDI_NOTE_A_1"}, - {QK_MIDI_NOTE_A_SHARP_1, "QK_MIDI_NOTE_A_SHARP_1"}, - {QK_MIDI_NOTE_B_1, "QK_MIDI_NOTE_B_1"}, - {QK_MIDI_NOTE_C_2, "QK_MIDI_NOTE_C_2"}, - {QK_MIDI_NOTE_C_SHARP_2, "QK_MIDI_NOTE_C_SHARP_2"}, - {QK_MIDI_NOTE_D_2, "QK_MIDI_NOTE_D_2"}, - {QK_MIDI_NOTE_D_SHARP_2, "QK_MIDI_NOTE_D_SHARP_2"}, - {QK_MIDI_NOTE_E_2, "QK_MIDI_NOTE_E_2"}, - {QK_MIDI_NOTE_F_2, "QK_MIDI_NOTE_F_2"}, - {QK_MIDI_NOTE_F_SHARP_2, "QK_MIDI_NOTE_F_SHARP_2"}, - {QK_MIDI_NOTE_G_2, "QK_MIDI_NOTE_G_2"}, - {QK_MIDI_NOTE_G_SHARP_2, "QK_MIDI_NOTE_G_SHARP_2"}, - {QK_MIDI_NOTE_A_2, "QK_MIDI_NOTE_A_2"}, - {QK_MIDI_NOTE_A_SHARP_2, "QK_MIDI_NOTE_A_SHARP_2"}, - {QK_MIDI_NOTE_B_2, "QK_MIDI_NOTE_B_2"}, - {QK_MIDI_NOTE_C_3, "QK_MIDI_NOTE_C_3"}, - {QK_MIDI_NOTE_C_SHARP_3, "QK_MIDI_NOTE_C_SHARP_3"}, - {QK_MIDI_NOTE_D_3, "QK_MIDI_NOTE_D_3"}, - {QK_MIDI_NOTE_D_SHARP_3, "QK_MIDI_NOTE_D_SHARP_3"}, - {QK_MIDI_NOTE_E_3, "QK_MIDI_NOTE_E_3"}, - {QK_MIDI_NOTE_F_3, "QK_MIDI_NOTE_F_3"}, - {QK_MIDI_NOTE_F_SHARP_3, "QK_MIDI_NOTE_F_SHARP_3"}, - {QK_MIDI_NOTE_G_3, "QK_MIDI_NOTE_G_3"}, - {QK_MIDI_NOTE_G_SHARP_3, "QK_MIDI_NOTE_G_SHARP_3"}, - {QK_MIDI_NOTE_A_3, "QK_MIDI_NOTE_A_3"}, - {QK_MIDI_NOTE_A_SHARP_3, "QK_MIDI_NOTE_A_SHARP_3"}, - {QK_MIDI_NOTE_B_3, "QK_MIDI_NOTE_B_3"}, - {QK_MIDI_NOTE_C_4, "QK_MIDI_NOTE_C_4"}, - {QK_MIDI_NOTE_C_SHARP_4, "QK_MIDI_NOTE_C_SHARP_4"}, - {QK_MIDI_NOTE_D_4, "QK_MIDI_NOTE_D_4"}, - {QK_MIDI_NOTE_D_SHARP_4, "QK_MIDI_NOTE_D_SHARP_4"}, - {QK_MIDI_NOTE_E_4, "QK_MIDI_NOTE_E_4"}, - {QK_MIDI_NOTE_F_4, "QK_MIDI_NOTE_F_4"}, - {QK_MIDI_NOTE_F_SHARP_4, "QK_MIDI_NOTE_F_SHARP_4"}, - {QK_MIDI_NOTE_G_4, "QK_MIDI_NOTE_G_4"}, - {QK_MIDI_NOTE_G_SHARP_4, "QK_MIDI_NOTE_G_SHARP_4"}, - {QK_MIDI_NOTE_A_4, "QK_MIDI_NOTE_A_4"}, - {QK_MIDI_NOTE_A_SHARP_4, "QK_MIDI_NOTE_A_SHARP_4"}, - {QK_MIDI_NOTE_B_4, "QK_MIDI_NOTE_B_4"}, - {QK_MIDI_NOTE_C_5, "QK_MIDI_NOTE_C_5"}, - {QK_MIDI_NOTE_C_SHARP_5, "QK_MIDI_NOTE_C_SHARP_5"}, - {QK_MIDI_NOTE_D_5, "QK_MIDI_NOTE_D_5"}, - {QK_MIDI_NOTE_D_SHARP_5, "QK_MIDI_NOTE_D_SHARP_5"}, - {QK_MIDI_NOTE_E_5, "QK_MIDI_NOTE_E_5"}, - {QK_MIDI_NOTE_F_5, "QK_MIDI_NOTE_F_5"}, - {QK_MIDI_NOTE_F_SHARP_5, "QK_MIDI_NOTE_F_SHARP_5"}, - {QK_MIDI_NOTE_G_5, "QK_MIDI_NOTE_G_5"}, - {QK_MIDI_NOTE_G_SHARP_5, "QK_MIDI_NOTE_G_SHARP_5"}, - {QK_MIDI_NOTE_A_5, "QK_MIDI_NOTE_A_5"}, - {QK_MIDI_NOTE_A_SHARP_5, "QK_MIDI_NOTE_A_SHARP_5"}, - {QK_MIDI_NOTE_B_5, "QK_MIDI_NOTE_B_5"}, - {QK_MIDI_OCTAVE_N2, "QK_MIDI_OCTAVE_N2"}, - {QK_MIDI_OCTAVE_N1, "QK_MIDI_OCTAVE_N1"}, - {QK_MIDI_OCTAVE_0, "QK_MIDI_OCTAVE_0"}, - {QK_MIDI_OCTAVE_1, "QK_MIDI_OCTAVE_1"}, - {QK_MIDI_OCTAVE_2, "QK_MIDI_OCTAVE_2"}, - {QK_MIDI_OCTAVE_3, "QK_MIDI_OCTAVE_3"}, - {QK_MIDI_OCTAVE_4, "QK_MIDI_OCTAVE_4"}, - {QK_MIDI_OCTAVE_5, "QK_MIDI_OCTAVE_5"}, - {QK_MIDI_OCTAVE_6, "QK_MIDI_OCTAVE_6"}, - {QK_MIDI_OCTAVE_7, "QK_MIDI_OCTAVE_7"}, - {QK_MIDI_OCTAVE_DOWN, "QK_MIDI_OCTAVE_DOWN"}, - {QK_MIDI_OCTAVE_UP, "QK_MIDI_OCTAVE_UP"}, - {QK_MIDI_TRANSPOSE_N6, "QK_MIDI_TRANSPOSE_N6"}, - {QK_MIDI_TRANSPOSE_N5, "QK_MIDI_TRANSPOSE_N5"}, - {QK_MIDI_TRANSPOSE_N4, "QK_MIDI_TRANSPOSE_N4"}, - {QK_MIDI_TRANSPOSE_N3, "QK_MIDI_TRANSPOSE_N3"}, - {QK_MIDI_TRANSPOSE_N2, "QK_MIDI_TRANSPOSE_N2"}, - {QK_MIDI_TRANSPOSE_N1, "QK_MIDI_TRANSPOSE_N1"}, - {QK_MIDI_TRANSPOSE_0, "QK_MIDI_TRANSPOSE_0"}, - {QK_MIDI_TRANSPOSE_1, "QK_MIDI_TRANSPOSE_1"}, - {QK_MIDI_TRANSPOSE_2, "QK_MIDI_TRANSPOSE_2"}, - {QK_MIDI_TRANSPOSE_3, "QK_MIDI_TRANSPOSE_3"}, - {QK_MIDI_TRANSPOSE_4, "QK_MIDI_TRANSPOSE_4"}, - {QK_MIDI_TRANSPOSE_5, "QK_MIDI_TRANSPOSE_5"}, - {QK_MIDI_TRANSPOSE_6, "QK_MIDI_TRANSPOSE_6"}, - {QK_MIDI_TRANSPOSE_DOWN, "QK_MIDI_TRANSPOSE_DOWN"}, - {QK_MIDI_TRANSPOSE_UP, "QK_MIDI_TRANSPOSE_UP"}, - {QK_MIDI_VELOCITY_0, "QK_MIDI_VELOCITY_0"}, - {QK_MIDI_VELOCITY_1, "QK_MIDI_VELOCITY_1"}, - {QK_MIDI_VELOCITY_2, "QK_MIDI_VELOCITY_2"}, - {QK_MIDI_VELOCITY_3, "QK_MIDI_VELOCITY_3"}, - {QK_MIDI_VELOCITY_4, "QK_MIDI_VELOCITY_4"}, - {QK_MIDI_VELOCITY_5, "QK_MIDI_VELOCITY_5"}, - {QK_MIDI_VELOCITY_6, "QK_MIDI_VELOCITY_6"}, - {QK_MIDI_VELOCITY_7, "QK_MIDI_VELOCITY_7"}, - {QK_MIDI_VELOCITY_8, "QK_MIDI_VELOCITY_8"}, - {QK_MIDI_VELOCITY_9, "QK_MIDI_VELOCITY_9"}, - {QK_MIDI_VELOCITY_10, "QK_MIDI_VELOCITY_10"}, - {QK_MIDI_VELOCITY_DOWN, "QK_MIDI_VELOCITY_DOWN"}, - {QK_MIDI_VELOCITY_UP, "QK_MIDI_VELOCITY_UP"}, - {QK_MIDI_CHANNEL_1, "QK_MIDI_CHANNEL_1"}, - {QK_MIDI_CHANNEL_2, "QK_MIDI_CHANNEL_2"}, - {QK_MIDI_CHANNEL_3, "QK_MIDI_CHANNEL_3"}, - {QK_MIDI_CHANNEL_4, "QK_MIDI_CHANNEL_4"}, - {QK_MIDI_CHANNEL_5, "QK_MIDI_CHANNEL_5"}, - {QK_MIDI_CHANNEL_6, "QK_MIDI_CHANNEL_6"}, - {QK_MIDI_CHANNEL_7, "QK_MIDI_CHANNEL_7"}, - {QK_MIDI_CHANNEL_8, "QK_MIDI_CHANNEL_8"}, - {QK_MIDI_CHANNEL_9, "QK_MIDI_CHANNEL_9"}, - {QK_MIDI_CHANNEL_10, "QK_MIDI_CHANNEL_10"}, - {QK_MIDI_CHANNEL_11, "QK_MIDI_CHANNEL_11"}, - {QK_MIDI_CHANNEL_12, "QK_MIDI_CHANNEL_12"}, - {QK_MIDI_CHANNEL_13, "QK_MIDI_CHANNEL_13"}, - {QK_MIDI_CHANNEL_14, "QK_MIDI_CHANNEL_14"}, - {QK_MIDI_CHANNEL_15, "QK_MIDI_CHANNEL_15"}, - {QK_MIDI_CHANNEL_16, "QK_MIDI_CHANNEL_16"}, - {QK_MIDI_CHANNEL_DOWN, "QK_MIDI_CHANNEL_DOWN"}, - {QK_MIDI_CHANNEL_UP, "QK_MIDI_CHANNEL_UP"}, - {QK_MIDI_ALL_NOTES_OFF, "QK_MIDI_ALL_NOTES_OFF"}, - {QK_MIDI_SUSTAIN, "QK_MIDI_SUSTAIN"}, - {QK_MIDI_PORTAMENTO, "QK_MIDI_PORTAMENTO"}, - {QK_MIDI_SOSTENUTO, "QK_MIDI_SOSTENUTO"}, - {QK_MIDI_SOFT, "QK_MIDI_SOFT"}, - {QK_MIDI_LEGATO, "QK_MIDI_LEGATO"}, - {QK_MIDI_MODULATION, "QK_MIDI_MODULATION"}, - {QK_MIDI_MODULATION_SPEED_DOWN, "QK_MIDI_MODULATION_SPEED_DOWN"}, - {QK_MIDI_MODULATION_SPEED_UP, "QK_MIDI_MODULATION_SPEED_UP"}, - {QK_MIDI_PITCH_BEND_DOWN, "QK_MIDI_PITCH_BEND_DOWN"}, - {QK_MIDI_PITCH_BEND_UP, "QK_MIDI_PITCH_BEND_UP"}, - {QK_SEQUENCER_ON, "QK_SEQUENCER_ON"}, - {QK_SEQUENCER_OFF, "QK_SEQUENCER_OFF"}, - {QK_SEQUENCER_TOGGLE, "QK_SEQUENCER_TOGGLE"}, - {QK_SEQUENCER_TEMPO_DOWN, "QK_SEQUENCER_TEMPO_DOWN"}, - {QK_SEQUENCER_TEMPO_UP, "QK_SEQUENCER_TEMPO_UP"}, - {QK_SEQUENCER_RESOLUTION_DOWN, "QK_SEQUENCER_RESOLUTION_DOWN"}, - {QK_SEQUENCER_RESOLUTION_UP, "QK_SEQUENCER_RESOLUTION_UP"}, - {QK_SEQUENCER_STEPS_ALL, "QK_SEQUENCER_STEPS_ALL"}, - {QK_SEQUENCER_STEPS_CLEAR, "QK_SEQUENCER_STEPS_CLEAR"}, - {QK_JOYSTICK_BUTTON_0, "QK_JOYSTICK_BUTTON_0"}, - {QK_JOYSTICK_BUTTON_1, "QK_JOYSTICK_BUTTON_1"}, - {QK_JOYSTICK_BUTTON_2, "QK_JOYSTICK_BUTTON_2"}, - {QK_JOYSTICK_BUTTON_3, "QK_JOYSTICK_BUTTON_3"}, - {QK_JOYSTICK_BUTTON_4, "QK_JOYSTICK_BUTTON_4"}, - {QK_JOYSTICK_BUTTON_5, "QK_JOYSTICK_BUTTON_5"}, - {QK_JOYSTICK_BUTTON_6, "QK_JOYSTICK_BUTTON_6"}, - {QK_JOYSTICK_BUTTON_7, "QK_JOYSTICK_BUTTON_7"}, - {QK_JOYSTICK_BUTTON_8, "QK_JOYSTICK_BUTTON_8"}, - {QK_JOYSTICK_BUTTON_9, "QK_JOYSTICK_BUTTON_9"}, - {QK_JOYSTICK_BUTTON_10, "QK_JOYSTICK_BUTTON_10"}, - {QK_JOYSTICK_BUTTON_11, "QK_JOYSTICK_BUTTON_11"}, - {QK_JOYSTICK_BUTTON_12, "QK_JOYSTICK_BUTTON_12"}, - {QK_JOYSTICK_BUTTON_13, "QK_JOYSTICK_BUTTON_13"}, - {QK_JOYSTICK_BUTTON_14, "QK_JOYSTICK_BUTTON_14"}, - {QK_JOYSTICK_BUTTON_15, "QK_JOYSTICK_BUTTON_15"}, - {QK_JOYSTICK_BUTTON_16, "QK_JOYSTICK_BUTTON_16"}, - {QK_JOYSTICK_BUTTON_17, "QK_JOYSTICK_BUTTON_17"}, - {QK_JOYSTICK_BUTTON_18, "QK_JOYSTICK_BUTTON_18"}, - {QK_JOYSTICK_BUTTON_19, "QK_JOYSTICK_BUTTON_19"}, - {QK_JOYSTICK_BUTTON_20, "QK_JOYSTICK_BUTTON_20"}, - {QK_JOYSTICK_BUTTON_21, "QK_JOYSTICK_BUTTON_21"}, - {QK_JOYSTICK_BUTTON_22, "QK_JOYSTICK_BUTTON_22"}, - {QK_JOYSTICK_BUTTON_23, "QK_JOYSTICK_BUTTON_23"}, - {QK_JOYSTICK_BUTTON_24, "QK_JOYSTICK_BUTTON_24"}, - {QK_JOYSTICK_BUTTON_25, "QK_JOYSTICK_BUTTON_25"}, - {QK_JOYSTICK_BUTTON_26, "QK_JOYSTICK_BUTTON_26"}, - {QK_JOYSTICK_BUTTON_27, "QK_JOYSTICK_BUTTON_27"}, - {QK_JOYSTICK_BUTTON_28, "QK_JOYSTICK_BUTTON_28"}, - {QK_JOYSTICK_BUTTON_29, "QK_JOYSTICK_BUTTON_29"}, - {QK_JOYSTICK_BUTTON_30, "QK_JOYSTICK_BUTTON_30"}, - {QK_JOYSTICK_BUTTON_31, "QK_JOYSTICK_BUTTON_31"}, - {QK_PROGRAMMABLE_BUTTON_1, "QK_PROGRAMMABLE_BUTTON_1"}, - {QK_PROGRAMMABLE_BUTTON_2, "QK_PROGRAMMABLE_BUTTON_2"}, - {QK_PROGRAMMABLE_BUTTON_3, "QK_PROGRAMMABLE_BUTTON_3"}, - {QK_PROGRAMMABLE_BUTTON_4, "QK_PROGRAMMABLE_BUTTON_4"}, - {QK_PROGRAMMABLE_BUTTON_5, "QK_PROGRAMMABLE_BUTTON_5"}, - {QK_PROGRAMMABLE_BUTTON_6, "QK_PROGRAMMABLE_BUTTON_6"}, - {QK_PROGRAMMABLE_BUTTON_7, "QK_PROGRAMMABLE_BUTTON_7"}, - {QK_PROGRAMMABLE_BUTTON_8, "QK_PROGRAMMABLE_BUTTON_8"}, - {QK_PROGRAMMABLE_BUTTON_9, "QK_PROGRAMMABLE_BUTTON_9"}, - {QK_PROGRAMMABLE_BUTTON_10, "QK_PROGRAMMABLE_BUTTON_10"}, - {QK_PROGRAMMABLE_BUTTON_11, "QK_PROGRAMMABLE_BUTTON_11"}, - {QK_PROGRAMMABLE_BUTTON_12, "QK_PROGRAMMABLE_BUTTON_12"}, - {QK_PROGRAMMABLE_BUTTON_13, "QK_PROGRAMMABLE_BUTTON_13"}, - {QK_PROGRAMMABLE_BUTTON_14, "QK_PROGRAMMABLE_BUTTON_14"}, - {QK_PROGRAMMABLE_BUTTON_15, "QK_PROGRAMMABLE_BUTTON_15"}, - {QK_PROGRAMMABLE_BUTTON_16, "QK_PROGRAMMABLE_BUTTON_16"}, - {QK_PROGRAMMABLE_BUTTON_17, "QK_PROGRAMMABLE_BUTTON_17"}, - {QK_PROGRAMMABLE_BUTTON_18, "QK_PROGRAMMABLE_BUTTON_18"}, - {QK_PROGRAMMABLE_BUTTON_19, "QK_PROGRAMMABLE_BUTTON_19"}, - {QK_PROGRAMMABLE_BUTTON_20, "QK_PROGRAMMABLE_BUTTON_20"}, - {QK_PROGRAMMABLE_BUTTON_21, "QK_PROGRAMMABLE_BUTTON_21"}, - {QK_PROGRAMMABLE_BUTTON_22, "QK_PROGRAMMABLE_BUTTON_22"}, - {QK_PROGRAMMABLE_BUTTON_23, "QK_PROGRAMMABLE_BUTTON_23"}, - {QK_PROGRAMMABLE_BUTTON_24, "QK_PROGRAMMABLE_BUTTON_24"}, - {QK_PROGRAMMABLE_BUTTON_25, "QK_PROGRAMMABLE_BUTTON_25"}, - {QK_PROGRAMMABLE_BUTTON_26, "QK_PROGRAMMABLE_BUTTON_26"}, - {QK_PROGRAMMABLE_BUTTON_27, "QK_PROGRAMMABLE_BUTTON_27"}, - {QK_PROGRAMMABLE_BUTTON_28, "QK_PROGRAMMABLE_BUTTON_28"}, - {QK_PROGRAMMABLE_BUTTON_29, "QK_PROGRAMMABLE_BUTTON_29"}, - {QK_PROGRAMMABLE_BUTTON_30, "QK_PROGRAMMABLE_BUTTON_30"}, - {QK_PROGRAMMABLE_BUTTON_31, "QK_PROGRAMMABLE_BUTTON_31"}, - {QK_PROGRAMMABLE_BUTTON_32, "QK_PROGRAMMABLE_BUTTON_32"}, - {QK_AUDIO_ON, "QK_AUDIO_ON"}, - {QK_AUDIO_OFF, "QK_AUDIO_OFF"}, - {QK_AUDIO_TOGGLE, "QK_AUDIO_TOGGLE"}, - {QK_AUDIO_CLICKY_TOGGLE, "QK_AUDIO_CLICKY_TOGGLE"}, - {QK_AUDIO_CLICKY_ON, "QK_AUDIO_CLICKY_ON"}, - {QK_AUDIO_CLICKY_OFF, "QK_AUDIO_CLICKY_OFF"}, - {QK_AUDIO_CLICKY_UP, "QK_AUDIO_CLICKY_UP"}, - {QK_AUDIO_CLICKY_DOWN, "QK_AUDIO_CLICKY_DOWN"}, - {QK_AUDIO_CLICKY_RESET, "QK_AUDIO_CLICKY_RESET"}, - {QK_MUSIC_ON, "QK_MUSIC_ON"}, - {QK_MUSIC_OFF, "QK_MUSIC_OFF"}, - {QK_MUSIC_TOGGLE, "QK_MUSIC_TOGGLE"}, - {QK_MUSIC_MODE_NEXT, "QK_MUSIC_MODE_NEXT"}, - {QK_AUDIO_VOICE_NEXT, "QK_AUDIO_VOICE_NEXT"}, - {QK_AUDIO_VOICE_PREVIOUS, "QK_AUDIO_VOICE_PREVIOUS"}, - {QK_STENO_BOLT, "QK_STENO_BOLT"}, - {QK_STENO_GEMINI, "QK_STENO_GEMINI"}, - {QK_STENO_COMB, "QK_STENO_COMB"}, - {QK_STENO_COMB_MAX, "QK_STENO_COMB_MAX"}, - {QK_MACRO_0, "QK_MACRO_0"}, - {QK_MACRO_1, "QK_MACRO_1"}, - {QK_MACRO_2, "QK_MACRO_2"}, - {QK_MACRO_3, "QK_MACRO_3"}, - {QK_MACRO_4, "QK_MACRO_4"}, - {QK_MACRO_5, "QK_MACRO_5"}, - {QK_MACRO_6, "QK_MACRO_6"}, - {QK_MACRO_7, "QK_MACRO_7"}, - {QK_MACRO_8, "QK_MACRO_8"}, - {QK_MACRO_9, "QK_MACRO_9"}, - {QK_MACRO_10, "QK_MACRO_10"}, - {QK_MACRO_11, "QK_MACRO_11"}, - {QK_MACRO_12, "QK_MACRO_12"}, - {QK_MACRO_13, "QK_MACRO_13"}, - {QK_MACRO_14, "QK_MACRO_14"}, - {QK_MACRO_15, "QK_MACRO_15"}, - {QK_MACRO_16, "QK_MACRO_16"}, - {QK_MACRO_17, "QK_MACRO_17"}, - {QK_MACRO_18, "QK_MACRO_18"}, - {QK_MACRO_19, "QK_MACRO_19"}, - {QK_MACRO_20, "QK_MACRO_20"}, - {QK_MACRO_21, "QK_MACRO_21"}, - {QK_MACRO_22, "QK_MACRO_22"}, - {QK_MACRO_23, "QK_MACRO_23"}, - {QK_MACRO_24, "QK_MACRO_24"}, - {QK_MACRO_25, "QK_MACRO_25"}, - {QK_MACRO_26, "QK_MACRO_26"}, - {QK_MACRO_27, "QK_MACRO_27"}, - {QK_MACRO_28, "QK_MACRO_28"}, - {QK_MACRO_29, "QK_MACRO_29"}, - {QK_MACRO_30, "QK_MACRO_30"}, - {QK_MACRO_31, "QK_MACRO_31"}, - {QK_OUTPUT_AUTO, "QK_OUTPUT_AUTO"}, - {QK_OUTPUT_NEXT, "QK_OUTPUT_NEXT"}, - {QK_OUTPUT_PREV, "QK_OUTPUT_PREV"}, - {QK_OUTPUT_NONE, "QK_OUTPUT_NONE"}, - {QK_OUTPUT_USB, "QK_OUTPUT_USB"}, - {QK_OUTPUT_2P4GHZ, "QK_OUTPUT_2P4GHZ"}, - {QK_OUTPUT_BLUETOOTH, "QK_OUTPUT_BLUETOOTH"}, - {QK_BLUETOOTH_PROFILE_NEXT, "QK_BLUETOOTH_PROFILE_NEXT"}, - {QK_BLUETOOTH_PROFILE_PREV, "QK_BLUETOOTH_PROFILE_PREV"}, - {QK_BLUETOOTH_UNPAIR, "QK_BLUETOOTH_UNPAIR"}, - {QK_BLUETOOTH_PROFILE1, "QK_BLUETOOTH_PROFILE1"}, - {QK_BLUETOOTH_PROFILE2, "QK_BLUETOOTH_PROFILE2"}, - {QK_BLUETOOTH_PROFILE3, "QK_BLUETOOTH_PROFILE3"}, - {QK_BLUETOOTH_PROFILE4, "QK_BLUETOOTH_PROFILE4"}, - {QK_BLUETOOTH_PROFILE5, "QK_BLUETOOTH_PROFILE5"}, - {QK_BACKLIGHT_ON, "QK_BACKLIGHT_ON"}, - {QK_BACKLIGHT_OFF, "QK_BACKLIGHT_OFF"}, - {QK_BACKLIGHT_TOGGLE, "QK_BACKLIGHT_TOGGLE"}, - {QK_BACKLIGHT_DOWN, "QK_BACKLIGHT_DOWN"}, - {QK_BACKLIGHT_UP, "QK_BACKLIGHT_UP"}, - {QK_BACKLIGHT_STEP, "QK_BACKLIGHT_STEP"}, - {QK_BACKLIGHT_TOGGLE_BREATHING, "QK_BACKLIGHT_TOGGLE_BREATHING"}, - {QK_LED_MATRIX_ON, "QK_LED_MATRIX_ON"}, - {QK_LED_MATRIX_OFF, "QK_LED_MATRIX_OFF"}, - {QK_LED_MATRIX_TOGGLE, "QK_LED_MATRIX_TOGGLE"}, - {QK_LED_MATRIX_MODE_NEXT, "QK_LED_MATRIX_MODE_NEXT"}, - {QK_LED_MATRIX_MODE_PREVIOUS, "QK_LED_MATRIX_MODE_PREVIOUS"}, - {QK_LED_MATRIX_BRIGHTNESS_UP, "QK_LED_MATRIX_BRIGHTNESS_UP"}, - {QK_LED_MATRIX_BRIGHTNESS_DOWN, "QK_LED_MATRIX_BRIGHTNESS_DOWN"}, - {QK_LED_MATRIX_SPEED_UP, "QK_LED_MATRIX_SPEED_UP"}, - {QK_LED_MATRIX_SPEED_DOWN, "QK_LED_MATRIX_SPEED_DOWN"}, - {QK_UNDERGLOW_TOGGLE, "QK_UNDERGLOW_TOGGLE"}, - {QK_UNDERGLOW_MODE_NEXT, "QK_UNDERGLOW_MODE_NEXT"}, - {QK_UNDERGLOW_MODE_PREVIOUS, "QK_UNDERGLOW_MODE_PREVIOUS"}, - {QK_UNDERGLOW_HUE_UP, "QK_UNDERGLOW_HUE_UP"}, - {QK_UNDERGLOW_HUE_DOWN, "QK_UNDERGLOW_HUE_DOWN"}, - {QK_UNDERGLOW_SATURATION_UP, "QK_UNDERGLOW_SATURATION_UP"}, - {QK_UNDERGLOW_SATURATION_DOWN, "QK_UNDERGLOW_SATURATION_DOWN"}, - {QK_UNDERGLOW_VALUE_UP, "QK_UNDERGLOW_VALUE_UP"}, - {QK_UNDERGLOW_VALUE_DOWN, "QK_UNDERGLOW_VALUE_DOWN"}, - {QK_UNDERGLOW_SPEED_UP, "QK_UNDERGLOW_SPEED_UP"}, - {QK_UNDERGLOW_SPEED_DOWN, "QK_UNDERGLOW_SPEED_DOWN"}, - {RGB_MODE_PLAIN, "RGB_MODE_PLAIN"}, - {RGB_MODE_BREATHE, "RGB_MODE_BREATHE"}, - {RGB_MODE_RAINBOW, "RGB_MODE_RAINBOW"}, - {RGB_MODE_SWIRL, "RGB_MODE_SWIRL"}, - {RGB_MODE_SNAKE, "RGB_MODE_SNAKE"}, - {RGB_MODE_KNIGHT, "RGB_MODE_KNIGHT"}, - {RGB_MODE_XMAS, "RGB_MODE_XMAS"}, - {RGB_MODE_GRADIENT, "RGB_MODE_GRADIENT"}, - {RGB_MODE_RGBTEST, "RGB_MODE_RGBTEST"}, - {RGB_MODE_TWINKLE, "RGB_MODE_TWINKLE"}, - {QK_RGB_MATRIX_ON, "QK_RGB_MATRIX_ON"}, - {QK_RGB_MATRIX_OFF, "QK_RGB_MATRIX_OFF"}, - {QK_RGB_MATRIX_TOGGLE, "QK_RGB_MATRIX_TOGGLE"}, - {QK_RGB_MATRIX_MODE_NEXT, "QK_RGB_MATRIX_MODE_NEXT"}, - {QK_RGB_MATRIX_MODE_PREVIOUS, "QK_RGB_MATRIX_MODE_PREVIOUS"}, - {QK_RGB_MATRIX_HUE_UP, "QK_RGB_MATRIX_HUE_UP"}, - {QK_RGB_MATRIX_HUE_DOWN, "QK_RGB_MATRIX_HUE_DOWN"}, - {QK_RGB_MATRIX_SATURATION_UP, "QK_RGB_MATRIX_SATURATION_UP"}, - {QK_RGB_MATRIX_SATURATION_DOWN, "QK_RGB_MATRIX_SATURATION_DOWN"}, - {QK_RGB_MATRIX_VALUE_UP, "QK_RGB_MATRIX_VALUE_UP"}, - {QK_RGB_MATRIX_VALUE_DOWN, "QK_RGB_MATRIX_VALUE_DOWN"}, - {QK_RGB_MATRIX_SPEED_UP, "QK_RGB_MATRIX_SPEED_UP"}, - {QK_RGB_MATRIX_SPEED_DOWN, "QK_RGB_MATRIX_SPEED_DOWN"}, - {QK_BOOTLOADER, "QK_BOOTLOADER"}, - {QK_REBOOT, "QK_REBOOT"}, - {QK_DEBUG_TOGGLE, "QK_DEBUG_TOGGLE"}, - {QK_CLEAR_EEPROM, "QK_CLEAR_EEPROM"}, - {QK_MAKE, "QK_MAKE"}, - {QK_AUTO_SHIFT_DOWN, "QK_AUTO_SHIFT_DOWN"}, - {QK_AUTO_SHIFT_UP, "QK_AUTO_SHIFT_UP"}, - {QK_AUTO_SHIFT_REPORT, "QK_AUTO_SHIFT_REPORT"}, - {QK_AUTO_SHIFT_ON, "QK_AUTO_SHIFT_ON"}, - {QK_AUTO_SHIFT_OFF, "QK_AUTO_SHIFT_OFF"}, - {QK_AUTO_SHIFT_TOGGLE, "QK_AUTO_SHIFT_TOGGLE"}, - {QK_GRAVE_ESCAPE, "QK_GRAVE_ESCAPE"}, - {QK_VELOCIKEY_TOGGLE, "QK_VELOCIKEY_TOGGLE"}, - {QK_SPACE_CADET_LEFT_CTRL_PARENTHESIS_OPEN, "QK_SPACE_CADET_LEFT_CTRL_PARENTHESIS_OPEN"}, - {QK_SPACE_CADET_RIGHT_CTRL_PARENTHESIS_CLOSE, "QK_SPACE_CADET_RIGHT_CTRL_PARENTHESIS_CLOSE"}, - {QK_SPACE_CADET_LEFT_SHIFT_PARENTHESIS_OPEN, "QK_SPACE_CADET_LEFT_SHIFT_PARENTHESIS_OPEN"}, - {QK_SPACE_CADET_RIGHT_SHIFT_PARENTHESIS_CLOSE, "QK_SPACE_CADET_RIGHT_SHIFT_PARENTHESIS_CLOSE"}, - {QK_SPACE_CADET_LEFT_ALT_PARENTHESIS_OPEN, "QK_SPACE_CADET_LEFT_ALT_PARENTHESIS_OPEN"}, - {QK_SPACE_CADET_RIGHT_ALT_PARENTHESIS_CLOSE, "QK_SPACE_CADET_RIGHT_ALT_PARENTHESIS_CLOSE"}, - {QK_SPACE_CADET_RIGHT_SHIFT_ENTER, "QK_SPACE_CADET_RIGHT_SHIFT_ENTER"}, - {QK_UNICODE_MODE_NEXT, "QK_UNICODE_MODE_NEXT"}, - {QK_UNICODE_MODE_PREVIOUS, "QK_UNICODE_MODE_PREVIOUS"}, - {QK_UNICODE_MODE_MACOS, "QK_UNICODE_MODE_MACOS"}, - {QK_UNICODE_MODE_LINUX, "QK_UNICODE_MODE_LINUX"}, - {QK_UNICODE_MODE_WINDOWS, "QK_UNICODE_MODE_WINDOWS"}, - {QK_UNICODE_MODE_BSD, "QK_UNICODE_MODE_BSD"}, - {QK_UNICODE_MODE_WINCOMPOSE, "QK_UNICODE_MODE_WINCOMPOSE"}, - {QK_UNICODE_MODE_EMACS, "QK_UNICODE_MODE_EMACS"}, - {QK_HAPTIC_ON, "QK_HAPTIC_ON"}, - {QK_HAPTIC_OFF, "QK_HAPTIC_OFF"}, - {QK_HAPTIC_TOGGLE, "QK_HAPTIC_TOGGLE"}, - {QK_HAPTIC_RESET, "QK_HAPTIC_RESET"}, - {QK_HAPTIC_FEEDBACK_TOGGLE, "QK_HAPTIC_FEEDBACK_TOGGLE"}, - {QK_HAPTIC_BUZZ_TOGGLE, "QK_HAPTIC_BUZZ_TOGGLE"}, - {QK_HAPTIC_MODE_NEXT, "QK_HAPTIC_MODE_NEXT"}, - {QK_HAPTIC_MODE_PREVIOUS, "QK_HAPTIC_MODE_PREVIOUS"}, - {QK_HAPTIC_CONTINUOUS_TOGGLE, "QK_HAPTIC_CONTINUOUS_TOGGLE"}, - {QK_HAPTIC_CONTINUOUS_UP, "QK_HAPTIC_CONTINUOUS_UP"}, - {QK_HAPTIC_CONTINUOUS_DOWN, "QK_HAPTIC_CONTINUOUS_DOWN"}, - {QK_HAPTIC_DWELL_UP, "QK_HAPTIC_DWELL_UP"}, - {QK_HAPTIC_DWELL_DOWN, "QK_HAPTIC_DWELL_DOWN"}, - {QK_COMBO_ON, "QK_COMBO_ON"}, - {QK_COMBO_OFF, "QK_COMBO_OFF"}, - {QK_COMBO_TOGGLE, "QK_COMBO_TOGGLE"}, - {QK_DYNAMIC_MACRO_RECORD_START_1, "QK_DYNAMIC_MACRO_RECORD_START_1"}, - {QK_DYNAMIC_MACRO_RECORD_START_2, "QK_DYNAMIC_MACRO_RECORD_START_2"}, - {QK_DYNAMIC_MACRO_RECORD_STOP, "QK_DYNAMIC_MACRO_RECORD_STOP"}, - {QK_DYNAMIC_MACRO_PLAY_1, "QK_DYNAMIC_MACRO_PLAY_1"}, - {QK_DYNAMIC_MACRO_PLAY_2, "QK_DYNAMIC_MACRO_PLAY_2"}, - {QK_LEADER, "QK_LEADER"}, - {QK_LOCK, "QK_LOCK"}, - {QK_ONE_SHOT_ON, "QK_ONE_SHOT_ON"}, - {QK_ONE_SHOT_OFF, "QK_ONE_SHOT_OFF"}, - {QK_ONE_SHOT_TOGGLE, "QK_ONE_SHOT_TOGGLE"}, - {QK_KEY_OVERRIDE_TOGGLE, "QK_KEY_OVERRIDE_TOGGLE"}, - {QK_KEY_OVERRIDE_ON, "QK_KEY_OVERRIDE_ON"}, - {QK_KEY_OVERRIDE_OFF, "QK_KEY_OVERRIDE_OFF"}, - {QK_SECURE_LOCK, "QK_SECURE_LOCK"}, - {QK_SECURE_UNLOCK, "QK_SECURE_UNLOCK"}, - {QK_SECURE_TOGGLE, "QK_SECURE_TOGGLE"}, - {QK_SECURE_REQUEST, "QK_SECURE_REQUEST"}, - {QK_DYNAMIC_TAPPING_TERM_PRINT, "QK_DYNAMIC_TAPPING_TERM_PRINT"}, - {QK_DYNAMIC_TAPPING_TERM_UP, "QK_DYNAMIC_TAPPING_TERM_UP"}, - {QK_DYNAMIC_TAPPING_TERM_DOWN, "QK_DYNAMIC_TAPPING_TERM_DOWN"}, - {QK_CAPS_WORD_TOGGLE, "QK_CAPS_WORD_TOGGLE"}, - {QK_AUTOCORRECT_ON, "QK_AUTOCORRECT_ON"}, - {QK_AUTOCORRECT_OFF, "QK_AUTOCORRECT_OFF"}, - {QK_AUTOCORRECT_TOGGLE, "QK_AUTOCORRECT_TOGGLE"}, - {QK_TRI_LAYER_LOWER, "QK_TRI_LAYER_LOWER"}, - {QK_TRI_LAYER_UPPER, "QK_TRI_LAYER_UPPER"}, - {QK_REPEAT_KEY, "QK_REPEAT_KEY"}, - {QK_ALT_REPEAT_KEY, "QK_ALT_REPEAT_KEY"}, - {QK_LAYER_LOCK, "QK_LAYER_LOCK"}, - {QK_KB_0, "QK_KB_0"}, - {QK_KB_1, "QK_KB_1"}, - {QK_KB_2, "QK_KB_2"}, - {QK_KB_3, "QK_KB_3"}, - {QK_KB_4, "QK_KB_4"}, - {QK_KB_5, "QK_KB_5"}, - {QK_KB_6, "QK_KB_6"}, - {QK_KB_7, "QK_KB_7"}, - {QK_KB_8, "QK_KB_8"}, - {QK_KB_9, "QK_KB_9"}, - {QK_KB_10, "QK_KB_10"}, - {QK_KB_11, "QK_KB_11"}, - {QK_KB_12, "QK_KB_12"}, - {QK_KB_13, "QK_KB_13"}, - {QK_KB_14, "QK_KB_14"}, - {QK_KB_15, "QK_KB_15"}, - {QK_KB_16, "QK_KB_16"}, - {QK_KB_17, "QK_KB_17"}, - {QK_KB_18, "QK_KB_18"}, - {QK_KB_19, "QK_KB_19"}, - {QK_KB_20, "QK_KB_20"}, - {QK_KB_21, "QK_KB_21"}, - {QK_KB_22, "QK_KB_22"}, - {QK_KB_23, "QK_KB_23"}, - {QK_KB_24, "QK_KB_24"}, - {QK_KB_25, "QK_KB_25"}, - {QK_KB_26, "QK_KB_26"}, - {QK_KB_27, "QK_KB_27"}, - {QK_KB_28, "QK_KB_28"}, - {QK_KB_29, "QK_KB_29"}, - {QK_KB_30, "QK_KB_30"}, - {QK_KB_31, "QK_KB_31"}, - {QK_USER_0, "QK_USER_0"}, - {QK_USER_1, "QK_USER_1"}, - {QK_USER_2, "QK_USER_2"}, - {QK_USER_3, "QK_USER_3"}, - {QK_USER_4, "QK_USER_4"}, - {QK_USER_5, "QK_USER_5"}, - {QK_USER_6, "QK_USER_6"}, - {QK_USER_7, "QK_USER_7"}, - {QK_USER_8, "QK_USER_8"}, - {QK_USER_9, "QK_USER_9"}, - {QK_USER_10, "QK_USER_10"}, - {QK_USER_11, "QK_USER_11"}, - {QK_USER_12, "QK_USER_12"}, - {QK_USER_13, "QK_USER_13"}, - {QK_USER_14, "QK_USER_14"}, - {QK_USER_15, "QK_USER_15"}, - {QK_USER_16, "QK_USER_16"}, - {QK_USER_17, "QK_USER_17"}, - {QK_USER_18, "QK_USER_18"}, - {QK_USER_19, "QK_USER_19"}, - {QK_USER_20, "QK_USER_20"}, - {QK_USER_21, "QK_USER_21"}, - {QK_USER_22, "QK_USER_22"}, - {QK_USER_23, "QK_USER_23"}, - {QK_USER_24, "QK_USER_24"}, - {QK_USER_25, "QK_USER_25"}, - {QK_USER_26, "QK_USER_26"}, - {QK_USER_27, "QK_USER_27"}, - {QK_USER_28, "QK_USER_28"}, - {QK_USER_29, "QK_USER_29"}, - {QK_USER_30, "QK_USER_30"}, - {QK_USER_31, "QK_USER_31"}, -}; diff --git a/tests/test_common/keycode_util.cpp b/tests/test_common/keycode_util.cpp deleted file mode 100644 index 539cab819a..0000000000 --- a/tests/test_common/keycode_util.cpp +++ /dev/null @@ -1,130 +0,0 @@ -#include "keycode_util.hpp" -#include <cstdint> -extern "C" { -#include "action_code.h" -#include "keycode.h" -#include "quantum_keycodes.h" -#include "util.h" -} -#include <string> -#include <iomanip> -#include <map> - -extern std::map<uint16_t, std::string> KEYCODE_ID_TABLE; - -std::string get_mods(uint8_t mods) { - std::stringstream s; - if ((mods & MOD_RCTL) == MOD_RCTL) { - s << XSTR(MOD_RCTL) << " | "; - } else if ((mods & MOD_LCTL) == MOD_LCTL) { - s << XSTR(MOD_LCTL) << " | "; - } - - if ((mods & MOD_RSFT) == MOD_RSFT) { - s << XSTR(MOD_RSFT) << " | "; - } else if ((mods & MOD_LSFT) == MOD_LSFT) { - s << XSTR(MOD_LSFT) << " | "; - } - - if ((mods & MOD_RALT) == MOD_RALT) { - s << XSTR(MOD_RALT) << " | "; - } else if ((mods & MOD_LALT) == MOD_LALT) { - s << XSTR(MOD_LALT) << " | "; - } - - if ((mods & MOD_RGUI) == MOD_RGUI) { - s << XSTR(MOD_RGUI) << " | "; - } else if ((mods & MOD_LGUI) == MOD_LGUI) { - s << XSTR(MOD_LGUI) << " | "; - } - - auto _mods = s.str(); - - if (_mods.size()) { - _mods.resize(_mods.size() - 3); - } - - return std::string(_mods); -} - -std::string get_qk_mods(uint16_t keycode) { - std::stringstream s; - if ((keycode & QK_RCTL) == QK_RCTL) { - s << XSTR(QK_RCTL) << " | "; - } else if ((keycode & QK_LCTL) == QK_LCTL) { - s << XSTR(QK_LCTL) << " | "; - } - - if ((keycode & QK_RSFT) == QK_RSFT) { - s << XSTR(QK_RSFT) << " | "; - } else if ((keycode & QK_LSFT) == QK_LSFT) { - s << XSTR(QK_LSFT) << " | "; - } - - if ((keycode & QK_RALT) == QK_RALT) { - s << XSTR(QK_RALT) << " | "; - } else if ((keycode & QK_LALT) == QK_LALT) { - s << XSTR(QK_LALT) << " | "; - } - - if ((keycode & QK_RGUI) == QK_RGUI) { - s << XSTR(QK_RGUI) << " | "; - } else if ((keycode & QK_LGUI) == QK_LGUI) { - s << XSTR(QK_LGUI) << " | "; - } - - auto _mods = s.str(); - - if (_mods.size()) { - _mods.resize(_mods.size() - 3); - } - - return std::string(_mods); -} - -std::string generate_identifier(uint16_t kc) { - std::stringstream s; - if (IS_QK_MOD_TAP(kc)) { - s << "MT(" << get_mods(QK_MOD_TAP_GET_MODS(kc)) << ", " << KEYCODE_ID_TABLE.at(kc & 0xFF) << ")"; - } else if (IS_QK_LAYER_TAP(kc)) { - s << "LT(" << +QK_LAYER_TAP_GET_LAYER(kc) << ", " << KEYCODE_ID_TABLE.at(kc & 0xFF) << ")"; - } else if (IS_QK_TO(kc)) { - s << "TO(" << +QK_TO_GET_LAYER(kc) << ")"; - } else if (IS_QK_MOMENTARY(kc)) { - s << "MO(" << +QK_MOMENTARY_GET_LAYER(kc) << ")"; - } else if (IS_QK_DEF_LAYER(kc)) { - s << "DF(" << +QK_DEF_LAYER_GET_LAYER(kc) << ")"; - } else if (IS_QK_PERSISTENT_DEF_LAYER(kc)) { - s << "PDF(" << +QK_PERSISTENT_DEF_LAYER_GET_LAYER(kc) << ")"; - } else if (IS_QK_TOGGLE_LAYER(kc)) { - s << "TG(" << +QK_TOGGLE_LAYER_GET_LAYER(kc) << ")"; - } else if (IS_QK_LAYER_TAP_TOGGLE(kc)) { - s << "TT(" << +QK_LAYER_TAP_TOGGLE_GET_LAYER(kc) << ")"; - } else if (IS_QK_ONE_SHOT_LAYER(kc)) { - s << "OSL(" << +QK_ONE_SHOT_LAYER_GET_LAYER(kc) << ")"; - } else if (IS_QK_LAYER_MOD(kc)) { - s << "LM(" << +QK_LAYER_MOD_GET_LAYER(kc) << ", " << get_mods(QK_LAYER_MOD_GET_MODS(kc)) << ")"; - } else if (IS_QK_ONE_SHOT_MOD(kc)) { - s << "OSM(" << get_mods(QK_ONE_SHOT_MOD_GET_MODS(kc)) << ")"; - } else if (IS_QK_MODS(kc)) { - s << "QK_MODS(" << KEYCODE_ID_TABLE.at(QK_MODS_GET_BASIC_KEYCODE(kc)) << ", " << get_qk_mods(kc) << ")"; - } else if (IS_QK_TAP_DANCE(kc)) { - s << "TD(" << +(kc & 0xFF) << ")"; - } else { - // Fallback - we didn't found any matching keycode, generate the hex representation. - s << "unknown keycode: 0x" << std::hex << kc << ". Add conversion to " << XSTR(generate_identifier); - } - - return std::string(s.str()); -} - -std::string get_keycode_identifier_or_default(uint16_t keycode) { - auto identifier = KEYCODE_ID_TABLE.find(keycode); - if (identifier != KEYCODE_ID_TABLE.end()) { - return identifier->second; - } - - KEYCODE_ID_TABLE[keycode] = generate_identifier(keycode); - - return KEYCODE_ID_TABLE[keycode]; -} diff --git a/tests/test_common/keycode_util.hpp b/tests/test_common/keycode_util.hpp deleted file mode 100644 index 3143ab364e..0000000000 --- a/tests/test_common/keycode_util.hpp +++ /dev/null @@ -1,6 +0,0 @@ -#pragma once - -#include <cstdint> -#include <string> - -std::string get_keycode_identifier_or_default(uint16_t keycode); diff --git a/tests/test_common/test_driver.hpp b/tests/test_common/test_driver.hpp index fea8225953..5c36c80dfc 100644 --- a/tests/test_common/test_driver.hpp +++ b/tests/test_common/test_driver.hpp @@ -20,7 +20,9 @@ #include <stdint.h> #include "host.h" #include "keyboard_report_util.hpp" -#include "keycode_util.hpp" +extern "C" { +#include "keycode_string.h" +} #include "test_logger.hpp" class TestDriver { @@ -146,11 +148,11 @@ class TestDriver { /** @brief Tests whether keycode `actual` is equal to `expected`. */ #define EXPECT_KEYCODE_EQ(actual, expected) EXPECT_THAT((actual), KeycodeEq((expected))) -MATCHER_P(KeycodeEq, expected_keycode, "is equal to " + testing::PrintToString(expected_keycode) + ", keycode " + get_keycode_identifier_or_default(expected_keycode)) { +MATCHER_P(KeycodeEq, expected_keycode, "is equal to " + testing::PrintToString(expected_keycode) + ", keycode " + get_keycode_string(expected_keycode)) { if (arg == expected_keycode) { return true; } - *result_listener << "keycode " << get_keycode_identifier_or_default(arg); + *result_listener << "keycode " << get_keycode_string(arg); return false; } diff --git a/tests/test_common/test_fixture.cpp b/tests/test_common/test_fixture.cpp index 81806b0e6d..00084721d6 100644 --- a/tests/test_common/test_fixture.cpp +++ b/tests/test_common/test_fixture.cpp @@ -46,7 +46,7 @@ void TestFixture::SetUpTestCase() { // The following is enough to bootstrap the values set in main eeconfig_init_quantum(); - eeconfig_update_debug(debug_config.raw); + eeconfig_update_debug(&debug_config); TestDriver driver; keyboard_init(); diff --git a/tests/test_common/test_keymap_key.hpp b/tests/test_common/test_keymap_key.hpp index 37b4c827e4..ba2c2912e3 100644 --- a/tests/test_common/test_keymap_key.hpp +++ b/tests/test_common/test_keymap_key.hpp @@ -18,10 +18,10 @@ #include <cstddef> #include <string> -#include "keycode_util.hpp" extern "C" { #include "keyboard.h" #include "test_matrix.h" +#include "keycode_string.h" } #include <cassert> @@ -29,11 +29,11 @@ extern "C" { typedef uint8_t layer_t; struct KeymapKey { - KeymapKey(layer_t layer, uint8_t col, uint8_t row, uint16_t keycode) : layer(layer), position({.col = col, .row = row}), code(keycode), report_code(keycode), name(get_keycode_identifier_or_default(keycode)) { + KeymapKey(layer_t layer, uint8_t col, uint8_t row, uint16_t keycode) : layer(layer), position({.col = col, .row = row}), code(keycode), report_code(keycode), name(get_keycode_string(keycode)) { validate(); } - KeymapKey(layer_t layer, uint8_t col, uint8_t row, uint16_t keycode, uint16_t report_code) : layer(layer), position({.col = col, .row = row}), code(keycode), report_code(report_code), name{get_keycode_identifier_or_default(keycode)} { + KeymapKey(layer_t layer, uint8_t col, uint8_t row, uint16_t keycode, uint16_t report_code) : layer(layer), position({.col = col, .row = row}), code(keycode), report_code(report_code), name{get_keycode_string(keycode)} { validate(); } diff --git a/tmk_core/protocol/chibios/chibios.c b/tmk_core/protocol/chibios/chibios.c index cf948154f9..d752f3746b 100644 --- a/tmk_core/protocol/chibios/chibios.c +++ b/tmk_core/protocol/chibios/chibios.c @@ -134,8 +134,6 @@ void protocol_setup(void) { // chThdCreateStatic(waThread1, sizeof(waThread1), NORMALPRIO, Thread1, NULL); } -static host_driver_t *driver = NULL; - void protocol_pre_init(void) { /* Init USB */ usb_event_queue_init(); @@ -146,18 +144,11 @@ void protocol_pre_init(void) { #endif /* Wait until USB is active */ - while (true) { -#if defined(USB_WAIT_FOR_ENUMERATION) - if (USB_DRIVER.state == USB_ACTIVE) { - driver = &chibios_driver; - break; - } -#else - driver = &chibios_driver; - break; -#endif +#ifdef USB_WAIT_FOR_ENUMERATION + while (USB_DRIVER.state != USB_ACTIVE) { wait_ms(50); } +#endif /* Do need to wait here! * Otherwise the next print might start a transfer on console EP @@ -170,7 +161,7 @@ void protocol_pre_init(void) { } void protocol_post_init(void) { - host_set_driver(driver); + host_set_driver(&chibios_driver); } void protocol_pre_task(void) { diff --git a/tmk_core/protocol/host.c b/tmk_core/protocol/host.c index df805c827c..453952049f 100644 --- a/tmk_core/protocol/host.c +++ b/tmk_core/protocol/host.c @@ -31,8 +31,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #endif #ifdef BLUETOOTH_ENABLE +# ifndef CONNECTION_ENABLE +# error CONNECTION_ENABLE required and not enabled +# endif +# include "connection.h" # include "bluetooth.h" -# include "outputselect.h" #endif #ifdef NKRO_ENABLE @@ -74,7 +77,7 @@ led_t host_keyboard_led_state(void) { /* send report */ void host_keyboard_send(report_keyboard_t *report) { #ifdef BLUETOOTH_ENABLE - if (where_to_send() == OUTPUT_BLUETOOTH) { + if (connection_get_host() == CONNECTION_HOST_BLUETOOTH) { bluetooth_send_keyboard(report); return; } @@ -111,7 +114,7 @@ void host_nkro_send(report_nkro_t *report) { void host_mouse_send(report_mouse_t *report) { #ifdef BLUETOOTH_ENABLE - if (where_to_send() == OUTPUT_BLUETOOTH) { + if (connection_get_host() == CONNECTION_HOST_BLUETOOTH) { bluetooth_send_mouse(report); return; } @@ -147,7 +150,7 @@ void host_consumer_send(uint16_t usage) { last_consumer_usage = usage; #ifdef BLUETOOTH_ENABLE - if (where_to_send() == OUTPUT_BLUETOOTH) { + if (connection_get_host() == CONNECTION_HOST_BLUETOOTH) { bluetooth_send_consumer(usage); return; } diff --git a/tmk_core/protocol/report.h b/tmk_core/protocol/report.h index d854f51d5c..9053b0bb3f 100644 --- a/tmk_core/protocol/report.h +++ b/tmk_core/protocol/report.h @@ -194,14 +194,22 @@ typedef struct { } PACKED report_programmable_button_t; #ifdef MOUSE_EXTENDED_REPORT +# define MOUSE_REPORT_XY_MIN INT16_MIN +# define MOUSE_REPORT_XY_MAX INT16_MAX typedef int16_t mouse_xy_report_t; #else +# define MOUSE_REPORT_XY_MIN INT8_MIN +# define MOUSE_REPORT_XY_MAX INT8_MAX typedef int8_t mouse_xy_report_t; #endif #ifdef WHEEL_EXTENDED_REPORT +# define MOUSE_REPORT_HV_MIN INT16_MIN +# define MOUSE_REPORT_HV_MAX INT16_MAX typedef int16_t mouse_hv_report_t; #else +# define MOUSE_REPORT_HV_MIN INT8_MIN +# define MOUSE_REPORT_HV_MAX INT8_MAX typedef int8_t mouse_hv_report_t; #endif diff --git a/tmk_core/protocol/usb_descriptor.c b/tmk_core/protocol/usb_descriptor.c index c7fb660b65..ceab9eef9a 100644 --- a/tmk_core/protocol/usb_descriptor.c +++ b/tmk_core/protocol/usb_descriptor.c @@ -165,6 +165,24 @@ const USB_Descriptor_HIDReport_Datatype_t PROGMEM SharedReport[] = { # endif HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE), +# ifdef POINTING_DEVICE_HIRES_SCROLL_ENABLE + HID_RI_COLLECTION(8, 0x02), + // Feature report and padding (1 byte) + HID_RI_USAGE(8, 0x48), // Resolution Multiplier + HID_RI_REPORT_COUNT(8, 0x01), + HID_RI_REPORT_SIZE(8, 0x02), + HID_RI_LOGICAL_MINIMUM(8, 0x00), + HID_RI_LOGICAL_MAXIMUM(8, 0x01), + HID_RI_PHYSICAL_MINIMUM(8, 1), + HID_RI_PHYSICAL_MAXIMUM(8, POINTING_DEVICE_HIRES_SCROLL_MULTIPLIER), + HID_RI_UNIT_EXPONENT(8, POINTING_DEVICE_HIRES_SCROLL_EXPONENT), + HID_RI_FEATURE(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE), + HID_RI_PHYSICAL_MINIMUM(8, 0x00), + HID_RI_PHYSICAL_MAXIMUM(8, 0x00), + HID_RI_REPORT_SIZE(8, 0x06), + HID_RI_FEATURE(8, HID_IOF_CONSTANT), +# endif + // Vertical wheel (1 or 2 bytes) HID_RI_USAGE(8, 0x38), // Wheel # ifndef WHEEL_EXTENDED_REPORT @@ -179,6 +197,7 @@ const USB_Descriptor_HIDReport_Datatype_t PROGMEM SharedReport[] = { HID_RI_REPORT_SIZE(8, 0x10), # endif HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE), + // Horizontal wheel (1 or 2 bytes) HID_RI_USAGE_PAGE(8, 0x0C),// Consumer HID_RI_USAGE(16, 0x0238), // AC Pan @@ -194,6 +213,11 @@ const USB_Descriptor_HIDReport_Datatype_t PROGMEM SharedReport[] = { HID_RI_REPORT_SIZE(8, 0x10), # endif HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE), + +# ifdef POINTING_DEVICE_HIRES_SCROLL_ENABLE + HID_RI_END_COLLECTION(0), +# endif + HID_RI_END_COLLECTION(0), HID_RI_END_COLLECTION(0), # ifndef MOUSE_SHARED_EP diff --git a/tmk_core/protocol/usb_descriptor_common.h b/tmk_core/protocol/usb_descriptor_common.h index 909c230a99..f782d83fbc 100644 --- a/tmk_core/protocol/usb_descriptor_common.h +++ b/tmk_core/protocol/usb_descriptor_common.h @@ -32,3 +32,23 @@ #ifndef RAW_USAGE_ID # define RAW_USAGE_ID 0x61 #endif + +///////////////////// +// Hires Scroll Defaults + +#ifdef POINTING_DEVICE_HIRES_SCROLL_ENABLE +# ifdef POINTING_DEVICE_HIRES_SCROLL_MULTIPLIER +# if POINTING_DEVICE_HIRES_SCROLL_MULTIPLIER > 127 || POINTING_DEVICE_HIRES_SCROLL_MULTIPLIER < 1 +# error "POINTING_DEVICE_HIRES_SCROLL_MULTIPLIER must be between 1 and 127, inclusive!" +# endif +# else +# define POINTING_DEVICE_HIRES_SCROLL_MULTIPLIER 120 +# endif +# ifdef POINTING_DEVICE_HIRES_SCROLL_EXPONENT +# if POINTING_DEVICE_HIRES_SCROLL_EXPONENT > 127 || POINTING_DEVICE_HIRES_SCROLL_EXPONENT < 0 +# error "POINTING_DEVICE_HIRES_SCROLL_EXPONENT must be between 0 and 127, inclusive!" +# endif +# else +# define POINTING_DEVICE_HIRES_SCROLL_EXPONENT 0 +# endif +#endif
\ No newline at end of file diff --git a/tmk_core/protocol/vusb/vusb.c b/tmk_core/protocol/vusb/vusb.c index fdbfcc17dc..56cf82e5a6 100644 --- a/tmk_core/protocol/vusb/vusb.c +++ b/tmk_core/protocol/vusb/vusb.c @@ -520,6 +520,24 @@ const PROGMEM uchar shared_hid_report[] = { # endif 0x81, 0x06, // Input (Data, Variable, Relative) +# ifdef POINTING_DEVICE_HIRES_SCROLL_ENABLE + // Feature report and padding (1 byte) + 0xA1, 0x02, // Collection (Logical) + 0x09, 0x48, // Usage (Resolution Multiplier) + 0x95, 0x01, // Report Count (1) + 0x75, 0x02, // Report Size (2) + 0x15, 0x00, // Logical Minimum (0) + 0x25, 0x01, // Logical Maximum (1) + 0x35, 0x01, // Physical Minimum (1) + 0x45, POINTING_DEVICE_HIRES_SCROLL_MULTIPLIER, // Physical Maximum (POINTING_DEVICE_HIRES_SCROLL_MULTIPLIER) + 0x55, POINTING_DEVICE_HIRES_SCROLL_EXPONENT, // Unit Exponent (POINTING_DEVICE_HIRES_SCROLL_EXPONENT) + 0xB1, 0x02, // Feature (Data, Variable, Absolute) + 0x35, 0x00, // Physical Minimum (0) + 0x45, 0x00, // Physical Maximum (0) + 0x75, 0x06, // Report Size (6) + 0xB1, 0x03, // Feature (Constant) +# endif + // Vertical wheel (1 or 2 bytes) 0x09, 0x38, // Usage (Wheel) # ifndef WHEEL_EXTENDED_REPORT @@ -534,6 +552,7 @@ const PROGMEM uchar shared_hid_report[] = { 0x75, 0x10, // Report Size (16) # endif 0x81, 0x06, // Input (Data, Variable, Relative) + // Horizontal wheel (1 or 2 bytes) 0x05, 0x0C, // Usage Page (Consumer) 0x0A, 0x38, 0x02, // Usage (AC Pan) @@ -549,8 +568,13 @@ const PROGMEM uchar shared_hid_report[] = { 0x75, 0x10, // Report Size (16) # endif 0x81, 0x06, // Input (Data, Variable, Relative) - 0xC0, // End Collection - 0xC0, // End Collection + +# ifdef POINTING_DEVICE_HIRES_SCROLL_ENABLE + 0xC0, // End Collection +# endif + + 0xC0, // End Collection + 0xC0, // End Collection #endif #ifdef EXTRAKEY_ENABLE diff --git a/users/_example/_example.c b/users/_example/_example.c index 8e0778b122..5f9580d8e9 100644 --- a/users/_example/_example.c +++ b/users/_example/_example.c @@ -2,4 +2,4 @@ void my_custom_function(void) { -}
\ No newline at end of file +} diff --git a/users/_example/_example.h b/users/_example/_example.h index f7c7990257..72907d06d7 100644 --- a/users/_example/_example.h +++ b/users/_example/_example.h @@ -5,4 +5,4 @@ void my_custom_function(void); -#endif
\ No newline at end of file +#endif diff --git a/users/_example/readme.md b/users/_example/readme.md index fdea33b67a..d6ead7efd2 100644 --- a/users/_example/readme.md +++ b/users/_example/readme.md @@ -11,4 +11,4 @@ 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/>.
\ No newline at end of file +along with this program. If not, see <http://www.gnu.org/licenses/>. diff --git a/users/_example/rules.mk b/users/_example/rules.mk index 250adc3d0d..af076dd7fe 100644 --- a/users/_example/rules.mk +++ b/users/_example/rules.mk @@ -1 +1 @@ -SRC += _example.c
\ No newline at end of file +SRC += _example.c diff --git a/users/readme.md b/users/readme.md index d8f14d8beb..8a490c28ce 100644 --- a/users/readme.md +++ b/users/readme.md @@ -1,3 +1,3 @@ # User space -This is a place for users to put code that they might use between keyboards. If you build the keymap `mine`, `/users/mine/rules.mk` will be included in your build, and `/users/mine/` will be in your path - keep these things in mind when naming your files and referencing them from other places.
\ No newline at end of file +This is a place for users to put code that they might use between keyboards. If you build the keymap `mine`, `/users/mine/rules.mk` will be included in your build, and `/users/mine/` will be in your path - keep these things in mind when naming your files and referencing them from other places. diff --git a/util/regen.sh b/util/regen.sh index ab03018893..df40444f80 100755 --- a/util/regen.sh +++ b/util/regen.sh @@ -3,7 +3,6 @@ set -e qmk generate-rgb-breathe-table -o quantum/rgblight/rgblight_breathe_table.h qmk generate-keycodes --version latest -o quantum/keycodes.h -qmk generate-keycodes-tests --version latest -o tests/test_common/keycode_table.cpp for lang in $(find data/constants/keycodes/extras/ -type f -exec basename '{}' \; | sed "s/keycodes_\(.*\)_[0-9].*/\1/"); do qmk generate-keycode-extras --version latest --lang $lang -o quantum/keymap_extras/keymap_$lang.h diff --git a/util/usb_detach/usb_detach.c b/util/usb_detach/usb_detach.c index 786ab5e674..8047c37ba3 100644 --- a/util/usb_detach/usb_detach.c +++ b/util/usb_detach/usb_detach.c @@ -31,4 +31,4 @@ int main(int argc, char**argv) printf ("usage: %s /dev/bus/usb/BUS/DEVICE\n",argv[0]); printf("Release all interfaces of this usb device for usage in virtualisation\n"); } -}
\ No newline at end of file +} |